TPTP Problem File: ITP231^3.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : ITP231^3 : TPTP v8.2.0. Released v8.1.0.
% Domain   : Interactive Theorem Proving
% Problem  : Sledgehammer problem VEBT_InsertCorrectness 00200_011877
% Version  : [Des22] axioms.
% English  :

% Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
%          : [Des22] Desharnais (2022), Email to Geoff Sutcliffe
% Source   : [Des22]
% Names    : 0067_VEBT_InsertCorrectness_00200_011877 [Des22]

% Status   : Theorem
% Rating   : 1.00 v8.1.0
% Syntax   : Number of formulae    : 3723 (1790 unt; 614 typ;   0 def)
%            Number of atoms       : 8818 (4018 equ;   0 cnn)
%            Maximal formula atoms :   71 (   2 avg)
%            Number of connectives : 39778 ( 936   ~; 148   |; 688   &;34349   @)
%                                         (   0 <=>;3657  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   39 (   6 avg)
%            Number of types       :   43 (  42 usr)
%            Number of type conns  : 1439 (1439   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  575 ( 572 usr;  54 con; 0-8 aty)
%            Number of variables   : 7833 ( 651   ^;6820   !; 362   ?;7833   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            from the van Emde Boas Trees session in the Archive of Formal
%            proofs - 
%            www.isa-afp.org/browser_info/current/AFP/Van_Emde_Boas_Trees
%            2022-02-17 20:37:12.152
%------------------------------------------------------------------------------
% Could-be-implicit typings (42)
thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc8923325533196201883nteger: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    option4927543243414619207at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    list_P6011104703257516679at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__VEBT____Definitions__OVEBT_Mt__Nat__Onat_J,type,
    produc9072475918466114483BT_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_Pr1261947904930325089at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    set_Pr958786334691620121nt_int: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__VEBT____Definitions__OVEBT_J_J,type,
    list_list_VEBT_VEBT: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    produc6271795597528267376eger_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Num__Onum_Mt__Num__Onum_J,type,
    product_prod_num_num: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Num__Onum_J,type,
    product_prod_nat_num: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    product_prod_nat_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    product_prod_int_int: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    list_list_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Int__Oint_J_J,type,
    list_list_int: $tType ).

thf(ty_n_t__List__Olist_It__VEBT____Definitions__OVEBT_J,type,
    list_VEBT_VEBT: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    set_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__VEBT____Definitions__OVEBT_J,type,
    set_VEBT_VEBT: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Ounit_J,type,
    set_Product_unit: $tType ).

thf(ty_n_t__List__Olist_It__Complex__Ocomplex_J,type,
    list_complex: $tType ).

thf(ty_n_t__Set__Oset_It__Complex__Ocomplex_J,type,
    set_complex: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Real__Oreal_J,type,
    filter_real: $tType ).

thf(ty_n_t__Option__Ooption_It__Num__Onum_J,type,
    option_num: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Nat__Onat_J,type,
    filter_nat: $tType ).

thf(ty_n_t__Set__Oset_It__String__Ochar_J,type,
    set_char: $tType ).

thf(ty_n_t__List__Olist_It__Real__Oreal_J,type,
    list_real: $tType ).

thf(ty_n_t__Set__Oset_It__Real__Oreal_J,type,
    set_real: $tType ).

thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
    list_nat: $tType ).

thf(ty_n_t__List__Olist_It__Int__Oint_J,type,
    list_int: $tType ).

thf(ty_n_t__VEBT____Definitions__OVEBT,type,
    vEBT_VEBT: $tType ).

thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
    set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Int__Oint_J,type,
    set_int: $tType ).

thf(ty_n_t__Code____Numeral__Ointeger,type,
    code_integer: $tType ).

thf(ty_n_t__Extended____Nat__Oenat,type,
    extended_enat: $tType ).

thf(ty_n_t__List__Olist_I_Eo_J,type,
    list_o: $tType ).

thf(ty_n_t__Complex__Ocomplex,type,
    complex: $tType ).

thf(ty_n_t__Set__Oset_I_Eo_J,type,
    set_o: $tType ).

thf(ty_n_t__String__Ochar,type,
    char: $tType ).

thf(ty_n_t__Real__Oreal,type,
    real: $tType ).

thf(ty_n_t__Rat__Orat,type,
    rat: $tType ).

thf(ty_n_t__Num__Onum,type,
    num: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_t__Int__Oint,type,
    int: $tType ).

% Explicit typings (572)
thf(sy_c_Archimedean__Field_Oceiling_001t__Real__Oreal,type,
    archim7802044766580827645g_real: real > int ).

thf(sy_c_Archimedean__Field_Ofloor__ceiling__class_Ofloor_001t__Rat__Orat,type,
    archim3151403230148437115or_rat: rat > int ).

thf(sy_c_Archimedean__Field_Ofloor__ceiling__class_Ofloor_001t__Real__Oreal,type,
    archim6058952711729229775r_real: real > int ).

thf(sy_c_Binomial_Obinomial,type,
    binomial: nat > nat > nat ).

thf(sy_c_Bit__Operations_Oand__int__rel,type,
    bit_and_int_rel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Bit__Operations_Oand__not__num,type,
    bit_and_not_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Oand__not__num__rel,type,
    bit_and_not_num_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Bit__Operations_Oconcat__bit,type,
    bit_concat_bit: nat > int > int > int ).

thf(sy_c_Bit__Operations_Oor__not__num__neg,type,
    bit_or_not_num_neg: num > num > num ).

thf(sy_c_Bit__Operations_Oor__not__num__neg__rel,type,
    bit_or3848514188828904588eg_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Onot_001t__Int__Oint,type,
    bit_ri7919022796975470100ot_int: int > int ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Osigned__take__bit_001t__Int__Oint,type,
    bit_ri631733984087533419it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Int__Oint,type,
    bit_se725231765392027082nd_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Nat__Onat,type,
    bit_se727722235901077358nd_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Int__Oint,type,
    bit_se8568078237143864401it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Nat__Onat,type,
    bit_se8570568707652914677it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Int__Oint,type,
    bit_se2159334234014336723it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Nat__Onat,type,
    bit_se2161824704523386999it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Int__Oint,type,
    bit_se2000444600071755411sk_int: nat > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Nat__Onat,type,
    bit_se2002935070580805687sk_nat: nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Int__Oint,type,
    bit_se1409905431419307370or_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Nat__Onat,type,
    bit_se1412395901928357646or_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Int__Oint,type,
    bit_se545348938243370406it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Nat__Onat,type,
    bit_se547839408752420682it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Int__Oint,type,
    bit_se7879613467334960850it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Nat__Onat,type,
    bit_se7882103937844011126it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Int__Oint,type,
    bit_se2923211474154528505it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Nat__Onat,type,
    bit_se2925701944663578781it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Int__Oint,type,
    bit_se4203085406695923979it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Nat__Onat,type,
    bit_se4205575877204974255it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Int__Oint,type,
    bit_se6526347334894502574or_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Nat__Onat,type,
    bit_se6528837805403552850or_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Int__Oint,type,
    bit_se1146084159140164899it_int: int > nat > $o ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Nat__Onat,type,
    bit_se1148574629649215175it_nat: nat > nat > $o ).

thf(sy_c_Bit__Operations_Otake__bit__num,type,
    bit_take_bit_num: nat > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations_Oand__num,type,
    bit_un1837492267222099188nd_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations_Oand__num__rel,type,
    bit_un5425074673868309765um_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations_Oxor__num,type,
    bit_un6178654185764691216or_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations_Oxor__num__rel,type,
    bit_un3595099601533988841um_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oand__num,type,
    bit_un7362597486090784418nd_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oand__num__rel,type,
    bit_un4731106466462545111um_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oxor__num,type,
    bit_un2480387367778600638or_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oxor__num__rel,type,
    bit_un2901131394128224187um_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Code__Numeral_Obit__cut__integer,type,
    code_bit_cut_integer: code_integer > produc6271795597528267376eger_o ).

thf(sy_c_Code__Numeral_Odivmod__abs,type,
    code_divmod_abs: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Code__Numeral_Odivmod__integer,type,
    code_divmod_integer: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Code__Numeral_Ointeger_Oint__of__integer,type,
    code_int_of_integer: code_integer > int ).

thf(sy_c_Code__Numeral_Ointeger_Ointeger__of__int,type,
    code_integer_of_int: int > code_integer ).

thf(sy_c_Code__Numeral_Ointeger__of__num,type,
    code_integer_of_num: num > code_integer ).

thf(sy_c_Code__Numeral_Onat__of__integer,type,
    code_nat_of_integer: code_integer > nat ).

thf(sy_c_Code__Numeral_Onegative,type,
    code_negative: num > code_integer ).

thf(sy_c_Code__Numeral_Onum__of__integer,type,
    code_num_of_integer: code_integer > num ).

thf(sy_c_Code__Numeral_Opositive,type,
    code_positive: num > code_integer ).

thf(sy_c_Code__Target__Int_Onegative,type,
    code_Target_negative: num > int ).

thf(sy_c_Code__Target__Int_Opositive,type,
    code_Target_positive: num > int ).

thf(sy_c_Complete__Lattices_OInf__class_OInf_001t__Real__Oreal,type,
    comple4887499456419720421f_real: set_real > real ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Int__Oint,type,
    complete_Sup_Sup_int: set_int > int ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Real__Oreal,type,
    comple1385675409528146559p_real: set_real > real ).

thf(sy_c_Complex_OArg,type,
    arg: complex > real ).

thf(sy_c_Complex_Ocis,type,
    cis: real > complex ).

thf(sy_c_Complex_Ocnj,type,
    cnj: complex > complex ).

thf(sy_c_Complex_Ocomplex_OComplex,type,
    complex2: real > real > complex ).

thf(sy_c_Complex_Ocomplex_OIm,type,
    im: complex > real ).

thf(sy_c_Complex_Ocomplex_ORe,type,
    re: complex > real ).

thf(sy_c_Complex_Ocsqrt,type,
    csqrt: complex > complex ).

thf(sy_c_Complex_Oimaginary__unit,type,
    imaginary_unit: complex ).

thf(sy_c_Deriv_Odifferentiable_001t__Real__Oreal_001t__Real__Oreal,type,
    differ6690327859849518006l_real: ( real > real ) > filter_real > $o ).

thf(sy_c_Deriv_Ohas__field__derivative_001t__Real__Oreal,type,
    has_fi5821293074295781190e_real: ( real > real ) > real > filter_real > $o ).

thf(sy_c_Divides_Oadjust__div,type,
    adjust_div: product_prod_int_int > int ).

thf(sy_c_Divides_Oadjust__mod,type,
    adjust_mod: int > int > int ).

thf(sy_c_Divides_Odivmod__nat,type,
    divmod_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Divides_Oeucl__rel__int,type,
    eucl_rel_int: int > int > product_prod_int_int > $o ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Code____Numeral__Ointeger,type,
    unique3479559517661332726nteger: num > num > produc8923325533196201883nteger ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Int__Oint,type,
    unique5052692396658037445od_int: num > num > product_prod_int_int ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Nat__Onat,type,
    unique5055182867167087721od_nat: num > num > product_prod_nat_nat ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Code____Numeral__Ointeger,type,
    unique4921790084139445826nteger: num > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Int__Oint,type,
    unique5024387138958732305ep_int: num > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Nat__Onat,type,
    unique5026877609467782581ep_nat: num > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Nat__Onat,type,
    semiri1408675320244567234ct_nat: nat > nat ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Real__Oreal,type,
    semiri2265585572941072030t_real: nat > real ).

thf(sy_c_Fields_Oinverse__class_Oinverse_001t__Complex__Ocomplex,type,
    invers8013647133539491842omplex: complex > complex ).

thf(sy_c_Fields_Oinverse__class_Oinverse_001t__Rat__Orat,type,
    inverse_inverse_rat: rat > rat ).

thf(sy_c_Fields_Oinverse__class_Oinverse_001t__Real__Oreal,type,
    inverse_inverse_real: real > real ).

thf(sy_c_Filter_Oat__bot_001t__Real__Oreal,type,
    at_bot_real: filter_real ).

thf(sy_c_Filter_Oat__top_001t__Nat__Onat,type,
    at_top_nat: filter_nat ).

thf(sy_c_Filter_Oat__top_001t__Real__Oreal,type,
    at_top_real: filter_real ).

thf(sy_c_Filter_Oeventually_001t__Nat__Onat,type,
    eventually_nat: ( nat > $o ) > filter_nat > $o ).

thf(sy_c_Filter_Oeventually_001t__Real__Oreal,type,
    eventually_real: ( real > $o ) > filter_real > $o ).

thf(sy_c_Filter_Ofilterlim_001t__Nat__Onat_001t__Nat__Onat,type,
    filterlim_nat_nat: ( nat > nat ) > filter_nat > filter_nat > $o ).

thf(sy_c_Filter_Ofilterlim_001t__Nat__Onat_001t__Real__Oreal,type,
    filterlim_nat_real: ( nat > real ) > filter_real > filter_nat > $o ).

thf(sy_c_Filter_Ofilterlim_001t__Real__Oreal_001t__Real__Oreal,type,
    filterlim_real_real: ( real > real ) > filter_real > filter_real > $o ).

thf(sy_c_Finite__Set_Ocard_001_Eo,type,
    finite_card_o: set_o > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Complex__Ocomplex,type,
    finite_card_complex: set_complex > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Int__Oint,type,
    finite_card_int: set_int > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Nat__Onat_J,type,
    finite_card_list_nat: set_list_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Nat__Onat,type,
    finite_card_nat: set_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Product____Type__Ounit,type,
    finite410649719033368117t_unit: set_Product_unit > nat ).

thf(sy_c_Finite__Set_Ocard_001t__String__Ochar,type,
    finite_card_char: set_char > nat ).

thf(sy_c_Finite__Set_Ofinite_001t__Complex__Ocomplex,type,
    finite3207457112153483333omplex: set_complex > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Int__Oint,type,
    finite_finite_int: set_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Nat__Onat,type,
    finite_finite_nat: set_nat > $o ).

thf(sy_c_Fun_Obij__betw_001t__Complex__Ocomplex_001t__Complex__Ocomplex,type,
    bij_be1856998921033663316omplex: ( complex > complex ) > set_complex > set_complex > $o ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001t__Complex__Ocomplex,type,
    bij_betw_nat_complex: ( nat > complex ) > set_nat > set_complex > $o ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001t__Nat__Onat,type,
    bij_betw_nat_nat: ( nat > nat ) > set_nat > set_nat > $o ).

thf(sy_c_Fun_Ocomp_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Code____Numeral__Ointeger,type,
    comp_C8797469213163452608nteger: ( ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ) > ( code_integer > code_integer > code_integer ) > code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Code____Numeral__Ointeger,type,
    comp_C1593894019821074884nteger: ( code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ) > ( code_integer > code_integer ) > code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Num__Onum,type,
    comp_C3531382070062128313er_num: ( code_integer > code_integer ) > ( num > code_integer ) > num > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Int__Oint_001t__Num__Onum,type,
    comp_int_int_num: ( int > int ) > ( num > int ) > num > int ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_nat_nat_nat: ( nat > nat ) > ( nat > nat ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Real__Oreal_001t__Nat__Onat,type,
    comp_nat_real_nat: ( nat > real ) > ( nat > nat ) > nat > real ).

thf(sy_c_Fun_Oid_001_Eo,type,
    id_o: $o > $o ).

thf(sy_c_Fun_Oid_001t__Nat__Onat,type,
    id_nat: nat > nat ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Nat__Onat,type,
    inj_on_nat_nat: ( nat > nat ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__String__Ochar,type,
    inj_on_nat_char: ( nat > char ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Real__Oreal_001t__Real__Oreal,type,
    inj_on_real_real: ( real > real ) > set_real > $o ).

thf(sy_c_Fun_Omap__fun_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo_001_Eo,type,
    map_fu898904425404107465nt_o_o: ( rat > product_prod_int_int ) > ( $o > $o ) > ( product_prod_int_int > $o ) > rat > $o ).

thf(sy_c_Fun_Ostrict__mono__on_001t__Nat__Onat_001t__Nat__Onat,type,
    strict1292158309912662752at_nat: ( nat > nat ) > set_nat > $o ).

thf(sy_c_Fun_Othe__inv__into_001t__Real__Oreal_001t__Real__Oreal,type,
    the_in5290026491893676941l_real: set_real > ( real > real ) > real > real ).

thf(sy_c_GCD_OGcd__class_OGcd_001t__Int__Oint,type,
    gcd_Gcd_int: set_int > int ).

thf(sy_c_GCD_OGcd__class_OGcd_001t__Nat__Onat,type,
    gcd_Gcd_nat: set_nat > nat ).

thf(sy_c_GCD_Obezw,type,
    bezw: nat > nat > product_prod_int_int ).

thf(sy_c_GCD_Obezw__rel,type,
    bezw_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Int__Oint,type,
    gcd_gcd_int: int > int > int ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Nat__Onat,type,
    gcd_gcd_nat: nat > nat > nat ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Code____Numeral__Ointeger,type,
    abs_abs_Code_integer: code_integer > code_integer ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Int__Oint,type,
    abs_abs_int: int > int ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Real__Oreal,type,
    abs_abs_real: real > real ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Code____Numeral__Ointeger,type,
    minus_8373710615458151222nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Complex__Ocomplex,type,
    minus_minus_complex: complex > complex > complex ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Extended____Nat__Oenat,type,
    minus_3235023915231533773d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Int__Oint,type,
    minus_minus_int: int > int > int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Rat__Orat,type,
    minus_minus_rat: rat > rat > rat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Real__Oreal,type,
    minus_minus_real: real > real > real ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Nat__Onat_J,type,
    minus_minus_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Code____Numeral__Ointeger,type,
    one_one_Code_integer: code_integer ).

thf(sy_c_Groups_Oone__class_Oone_001t__Complex__Ocomplex,type,
    one_one_complex: complex ).

thf(sy_c_Groups_Oone__class_Oone_001t__Extended____Nat__Oenat,type,
    one_on7984719198319812577d_enat: extended_enat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Int__Oint,type,
    one_one_int: int ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Rat__Orat,type,
    one_one_rat: rat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Real__Oreal,type,
    one_one_real: real ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Code____Numeral__Ointeger,type,
    plus_p5714425477246183910nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Complex__Ocomplex,type,
    plus_plus_complex: complex > complex > complex ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Extended____Nat__Oenat,type,
    plus_p3455044024723400733d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Int__Oint,type,
    plus_plus_int: int > int > int ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
    plus_plus_nat: nat > nat > nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Num__Onum,type,
    plus_plus_num: num > num > num ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Rat__Orat,type,
    plus_plus_rat: rat > rat > rat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Real__Oreal,type,
    plus_plus_real: real > real > real ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Code____Numeral__Ointeger,type,
    sgn_sgn_Code_integer: code_integer > code_integer ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Complex__Ocomplex,type,
    sgn_sgn_complex: complex > complex ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Int__Oint,type,
    sgn_sgn_int: int > int ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Rat__Orat,type,
    sgn_sgn_rat: rat > rat ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Real__Oreal,type,
    sgn_sgn_real: real > real ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Code____Numeral__Ointeger,type,
    times_3573771949741848930nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Complex__Ocomplex,type,
    times_times_complex: complex > complex > complex ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Extended____Nat__Oenat,type,
    times_7803423173614009249d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Int__Oint,type,
    times_times_int: int > int > int ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Nat__Onat,type,
    times_times_nat: nat > nat > nat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Num__Onum,type,
    times_times_num: num > num > num ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Rat__Orat,type,
    times_times_rat: rat > rat > rat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Real__Oreal,type,
    times_times_real: real > real > real ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Code____Numeral__Ointeger,type,
    uminus1351360451143612070nteger: code_integer > code_integer ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Complex__Ocomplex,type,
    uminus1482373934393186551omplex: complex > complex ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Int__Oint,type,
    uminus_uminus_int: int > int ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Rat__Orat,type,
    uminus_uminus_rat: rat > rat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Real__Oreal,type,
    uminus_uminus_real: real > real ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Code____Numeral__Ointeger,type,
    zero_z3403309356797280102nteger: code_integer ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Complex__Ocomplex,type,
    zero_zero_complex: complex ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Extended____Nat__Oenat,type,
    zero_z5237406670263579293d_enat: extended_enat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Int__Oint,type,
    zero_zero_int: int ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Rat__Orat,type,
    zero_zero_rat: rat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Real__Oreal,type,
    zero_zero_real: real ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Complex__Ocomplex_001t__Complex__Ocomplex,type,
    groups7754918857620584856omplex: ( complex > complex ) > set_complex > complex ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Int__Oint_001t__Int__Oint,type,
    groups4538972089207619220nt_int: ( int > int ) > set_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Nat__Onat,type,
    groups3542108847815614940at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Real__Oreal,type,
    groups6591440286371151544t_real: ( nat > real ) > set_nat > real ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Int__Oint_001t__Int__Oint,type,
    groups1705073143266064639nt_int: ( int > int ) > set_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Int__Oint,type,
    groups705719431365010083at_int: ( nat > int ) > set_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Nat__Onat,type,
    groups708209901874060359at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Groups__List_Ocomm__semiring__0__class_Ohorner__sum_001_Eo_001t__Int__Oint,type,
    groups9116527308978886569_o_int: ( $o > int ) > int > list_o > int ).

thf(sy_c_Groups__List_Omonoid__add__class_Osum__list_001t__Nat__Onat,type,
    groups4561878855575611511st_nat: list_nat > nat ).

thf(sy_c_HOL_OThe_001t__Int__Oint,type,
    the_int: ( int > $o ) > int ).

thf(sy_c_HOL_OThe_001t__Real__Oreal,type,
    the_real: ( real > $o ) > real ).

thf(sy_c_If_001t__Code____Numeral__Ointeger,type,
    if_Code_integer: $o > code_integer > code_integer > code_integer ).

thf(sy_c_If_001t__Int__Oint,type,
    if_int: $o > int > int > int ).

thf(sy_c_If_001t__List__Olist_It__Int__Oint_J,type,
    if_list_int: $o > list_int > list_int > list_int ).

thf(sy_c_If_001t__List__Olist_It__Nat__Onat_J,type,
    if_list_nat: $o > list_nat > list_nat > list_nat ).

thf(sy_c_If_001t__Nat__Onat,type,
    if_nat: $o > nat > nat > nat ).

thf(sy_c_If_001t__Num__Onum,type,
    if_num: $o > num > num > num ).

thf(sy_c_If_001t__Option__Ooption_It__Num__Onum_J,type,
    if_option_num: $o > option_num > option_num > option_num ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    if_Pro5737122678794959658eger_o: $o > produc6271795597528267376eger_o > produc6271795597528267376eger_o > produc6271795597528267376eger_o ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    if_Pro6119634080678213985nteger: $o > produc8923325533196201883nteger > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    if_Pro3027730157355071871nt_int: $o > product_prod_int_int > product_prod_int_int > product_prod_int_int ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    if_Pro6206227464963214023at_nat: $o > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_If_001t__Rat__Orat,type,
    if_rat: $o > rat > rat > rat ).

thf(sy_c_If_001t__Real__Oreal,type,
    if_real: $o > real > real > real ).

thf(sy_c_If_001t__Set__Oset_It__Int__Oint_J,type,
    if_set_int: $o > set_int > set_int > set_int ).

thf(sy_c_If_001t__VEBT____Definitions__OVEBT,type,
    if_VEBT_VEBT: $o > vEBT_VEBT > vEBT_VEBT > vEBT_VEBT ).

thf(sy_c_Int_OAbs__Integ,type,
    abs_Integ: product_prod_nat_nat > int ).

thf(sy_c_Int_ORep__Integ,type,
    rep_Integ: int > product_prod_nat_nat ).

thf(sy_c_Int_Oint__ge__less__than,type,
    int_ge_less_than: int > set_Pr958786334691620121nt_int ).

thf(sy_c_Int_Oint__ge__less__than2,type,
    int_ge_less_than2: int > set_Pr958786334691620121nt_int ).

thf(sy_c_Int_Onat,type,
    nat2: int > nat ).

thf(sy_c_Int_Opower__int_001t__Real__Oreal,type,
    power_int_real: real > int > real ).

thf(sy_c_Int_Oring__1__class_OInts_001t__Real__Oreal,type,
    ring_1_Ints_real: set_real ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Rat__Orat,type,
    ring_1_of_int_rat: int > rat ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Real__Oreal,type,
    ring_1_of_int_real: int > real ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Extended____Nat__Oenat,type,
    inf_in1870772243966228564d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Nat__Onat,type,
    inf_inf_nat: nat > nat > nat ).

thf(sy_c_Lattices_Osemilattice__neutr__order_001t__Nat__Onat,type,
    semila1623282765462674594er_nat: ( nat > nat > nat ) > nat > ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Extended____Nat__Oenat,type,
    sup_su3973961784419623482d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Nat__Onat,type,
    sup_sup_nat: nat > nat > nat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Nat__Onat_J,type,
    sup_sup_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Lattices__Big_Olinorder__class_OMax_001t__Nat__Onat,type,
    lattic8265883725875713057ax_nat: set_nat > nat ).

thf(sy_c_Limits_OBfun_001t__Nat__Onat_001t__Real__Oreal,type,
    bfun_nat_real: ( nat > real ) > filter_nat > $o ).

thf(sy_c_Limits_Oat__infinity_001t__Real__Oreal,type,
    at_infinity_real: filter_real ).

thf(sy_c_List_Oappend_001_Eo,type,
    append_o: list_o > list_o > list_o ).

thf(sy_c_List_Oappend_001t__Int__Oint,type,
    append_int: list_int > list_int > list_int ).

thf(sy_c_List_Oappend_001t__Nat__Onat,type,
    append_nat: list_nat > list_nat > list_nat ).

thf(sy_c_List_Oappend_001t__VEBT____Definitions__OVEBT,type,
    append_VEBT_VEBT: list_VEBT_VEBT > list_VEBT_VEBT > list_VEBT_VEBT ).

thf(sy_c_List_Odistinct_001t__Int__Oint,type,
    distinct_int: list_int > $o ).

thf(sy_c_List_Odistinct_001t__Nat__Onat,type,
    distinct_nat: list_nat > $o ).

thf(sy_c_List_Odrop_001_Eo,type,
    drop_o: nat > list_o > list_o ).

thf(sy_c_List_Odrop_001t__Complex__Ocomplex,type,
    drop_complex: nat > list_complex > list_complex ).

thf(sy_c_List_Odrop_001t__Int__Oint,type,
    drop_int: nat > list_int > list_int ).

thf(sy_c_List_Odrop_001t__Nat__Onat,type,
    drop_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Odrop_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    drop_P8868858903918902087at_nat: nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Odrop_001t__Real__Oreal,type,
    drop_real: nat > list_real > list_real ).

thf(sy_c_List_Odrop_001t__VEBT____Definitions__OVEBT,type,
    drop_VEBT_VEBT: nat > list_VEBT_VEBT > list_VEBT_VEBT ).

thf(sy_c_List_Olinorder__class_Osort__key_001t__Int__Oint_001t__Int__Oint,type,
    linord1735203802627413978nt_int: ( int > int ) > list_int > list_int ).

thf(sy_c_List_Olinorder__class_Osort__key_001t__Nat__Onat_001t__Nat__Onat,type,
    linord738340561235409698at_nat: ( nat > nat ) > list_nat > list_nat ).

thf(sy_c_List_Olinorder__class_Osorted__list__of__set_001t__Nat__Onat,type,
    linord2614967742042102400et_nat: set_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001_Eo,type,
    cons_o: $o > list_o > list_o ).

thf(sy_c_List_Olist_OCons_001t__Complex__Ocomplex,type,
    cons_complex: complex > list_complex > list_complex ).

thf(sy_c_List_Olist_OCons_001t__Int__Oint,type,
    cons_int: int > list_int > list_int ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Int__Oint_J,type,
    cons_list_int: list_int > list_list_int > list_list_int ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Nat__Onat_J,type,
    cons_list_nat: list_nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__VEBT____Definitions__OVEBT_J,type,
    cons_list_VEBT_VEBT: list_VEBT_VEBT > list_list_VEBT_VEBT > list_list_VEBT_VEBT ).

thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
    cons_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    cons_P6512896166579812791at_nat: product_prod_nat_nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Olist_OCons_001t__Real__Oreal,type,
    cons_real: real > list_real > list_real ).

thf(sy_c_List_Olist_OCons_001t__VEBT____Definitions__OVEBT,type,
    cons_VEBT_VEBT: vEBT_VEBT > list_VEBT_VEBT > list_VEBT_VEBT ).

thf(sy_c_List_Olist_ONil_001_Eo,type,
    nil_o: list_o ).

thf(sy_c_List_Olist_ONil_001t__Int__Oint,type,
    nil_int: list_int ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Int__Oint_J,type,
    nil_list_int: list_list_int ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Nat__Onat_J,type,
    nil_list_nat: list_list_nat ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__VEBT____Definitions__OVEBT_J,type,
    nil_list_VEBT_VEBT: list_list_VEBT_VEBT ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_ONil_001t__VEBT____Definitions__OVEBT,type,
    nil_VEBT_VEBT: list_VEBT_VEBT ).

thf(sy_c_List_Olist_Ohd_001t__Nat__Onat,type,
    hd_nat: list_nat > nat ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Nat__Onat,type,
    map_nat_nat: ( nat > nat ) > list_nat > list_nat ).

thf(sy_c_List_Olist_Oset_001_Eo,type,
    set_o2: list_o > set_o ).

thf(sy_c_List_Olist_Oset_001t__Complex__Ocomplex,type,
    set_complex2: list_complex > set_complex ).

thf(sy_c_List_Olist_Oset_001t__Int__Oint,type,
    set_int2: list_int > set_int ).

thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
    set_nat2: list_nat > set_nat ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    set_Pr5648618587558075414at_nat: list_P6011104703257516679at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_List_Olist_Oset_001t__Real__Oreal,type,
    set_real2: list_real > set_real ).

thf(sy_c_List_Olist_Oset_001t__VEBT____Definitions__OVEBT,type,
    set_VEBT_VEBT2: list_VEBT_VEBT > set_VEBT_VEBT ).

thf(sy_c_List_Olist_Osize__list_001t__VEBT____Definitions__OVEBT,type,
    size_list_VEBT_VEBT: ( vEBT_VEBT > nat ) > list_VEBT_VEBT > nat ).

thf(sy_c_List_Olist_Otl_001t__Nat__Onat,type,
    tl_nat: list_nat > list_nat ).

thf(sy_c_List_Olist__update_001t__VEBT____Definitions__OVEBT,type,
    list_u1324408373059187874T_VEBT: list_VEBT_VEBT > nat > vEBT_VEBT > list_VEBT_VEBT ).

thf(sy_c_List_Onth_001_Eo,type,
    nth_o: list_o > nat > $o ).

thf(sy_c_List_Onth_001t__Complex__Ocomplex,type,
    nth_complex: list_complex > nat > complex ).

thf(sy_c_List_Onth_001t__Int__Oint,type,
    nth_int: list_int > nat > int ).

thf(sy_c_List_Onth_001t__Nat__Onat,type,
    nth_nat: list_nat > nat > nat ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    nth_Pr7617993195940197384at_nat: list_P6011104703257516679at_nat > nat > product_prod_nat_nat ).

thf(sy_c_List_Onth_001t__Real__Oreal,type,
    nth_real: list_real > nat > real ).

thf(sy_c_List_Onth_001t__VEBT____Definitions__OVEBT,type,
    nth_VEBT_VEBT: list_VEBT_VEBT > nat > vEBT_VEBT ).

thf(sy_c_List_Oremdups_001t__Nat__Onat,type,
    remdups_nat: list_nat > list_nat ).

thf(sy_c_List_Oreplicate_001t__VEBT____Definitions__OVEBT,type,
    replicate_VEBT_VEBT: nat > vEBT_VEBT > list_VEBT_VEBT ).

thf(sy_c_List_Osorted__wrt_001t__Int__Oint,type,
    sorted_wrt_int: ( int > int > $o ) > list_int > $o ).

thf(sy_c_List_Osorted__wrt_001t__Nat__Onat,type,
    sorted_wrt_nat: ( nat > nat > $o ) > list_nat > $o ).

thf(sy_c_List_Otake_001_Eo,type,
    take_o: nat > list_o > list_o ).

thf(sy_c_List_Otake_001t__Complex__Ocomplex,type,
    take_complex: nat > list_complex > list_complex ).

thf(sy_c_List_Otake_001t__Int__Oint,type,
    take_int: nat > list_int > list_int ).

thf(sy_c_List_Otake_001t__Nat__Onat,type,
    take_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Otake_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    take_P2173866234530122223at_nat: nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Otake_001t__Real__Oreal,type,
    take_real: nat > list_real > list_real ).

thf(sy_c_List_Otake_001t__VEBT____Definitions__OVEBT,type,
    take_VEBT_VEBT: nat > list_VEBT_VEBT > list_VEBT_VEBT ).

thf(sy_c_List_Oupt,type,
    upt: nat > nat > list_nat ).

thf(sy_c_List_Oupto,type,
    upto: int > int > list_int ).

thf(sy_c_List_Oupto__aux,type,
    upto_aux: int > int > list_int > list_int ).

thf(sy_c_List_Oupto__rel,type,
    upto_rel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Nat_Ocompow_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    compow_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Onat_Ocase__nat_001_Eo,type,
    case_nat_o: $o > ( nat > $o ) > nat > $o ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Nat__Onat,type,
    case_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Option__Ooption_It__Num__Onum_J,type,
    case_nat_option_num: option_num > ( nat > option_num ) > nat > option_num ).

thf(sy_c_Nat_Onat_Opred,type,
    pred: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Int__Oint,type,
    semiri1314217659103216013at_int: nat > int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Nat__Onat,type,
    semiri1316708129612266289at_nat: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Rat__Orat,type,
    semiri681578069525770553at_rat: nat > rat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Real__Oreal,type,
    semiri5074537144036343181t_real: nat > real ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_I_Eo_J,type,
    size_size_list_o: list_o > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Complex__Ocomplex_J,type,
    size_s3451745648224563538omplex: list_complex > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Int__Oint_J,type,
    size_size_list_int: list_int > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
    size_size_list_nat: list_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    size_s5460976970255530739at_nat: list_P6011104703257516679at_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Real__Oreal_J,type,
    size_size_list_real: list_real > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__VEBT____Definitions__OVEBT_J,type,
    size_s6755466524823107622T_VEBT: list_VEBT_VEBT > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Num__Onum,type,
    size_size_num: num > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__VEBT____Definitions__OVEBT,type,
    size_size_VEBT_VEBT: vEBT_VEBT > nat ).

thf(sy_c_Nat__Bijection_Olist__encode,type,
    nat_list_encode: list_nat > nat ).

thf(sy_c_Nat__Bijection_Olist__encode__rel,type,
    nat_list_encode_rel: list_nat > list_nat > $o ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux,type,
    nat_prod_decode_aux: nat > nat > product_prod_nat_nat ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux__rel,type,
    nat_pr5047031295181774490ux_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Nat__Bijection_Oprod__encode,type,
    nat_prod_encode: product_prod_nat_nat > nat ).

thf(sy_c_Nat__Bijection_Oset__decode,type,
    nat_set_decode: nat > set_nat ).

thf(sy_c_Nat__Bijection_Oset__encode,type,
    nat_set_encode: set_nat > nat ).

thf(sy_c_Nat__Bijection_Otriangle,type,
    nat_triangle: nat > nat ).

thf(sy_c_NthRoot_Oroot,type,
    root: nat > real > real ).

thf(sy_c_NthRoot_Osqrt,type,
    sqrt: real > real ).

thf(sy_c_Num_OBitM,type,
    bitM: num > num ).

thf(sy_c_Num_Oinc,type,
    inc: num > num ).

thf(sy_c_Num_Oneg__numeral__class_Osub_001t__Int__Oint,type,
    neg_numeral_sub_int: num > num > int ).

thf(sy_c_Num_Onum_OBit0,type,
    bit0: num > num ).

thf(sy_c_Num_Onum_OBit1,type,
    bit1: num > num ).

thf(sy_c_Num_Onum_OOne,type,
    one: num ).

thf(sy_c_Num_Onum_Ocase__num_001t__Option__Ooption_It__Num__Onum_J,type,
    case_num_option_num: option_num > ( num > option_num ) > ( num > option_num ) > num > option_num ).

thf(sy_c_Num_Onum_Osize__num,type,
    size_num: num > nat ).

thf(sy_c_Num_Onum__of__nat,type,
    num_of_nat: nat > num ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Code____Numeral__Ointeger,type,
    numera6620942414471956472nteger: num > code_integer ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Complex__Ocomplex,type,
    numera6690914467698888265omplex: num > complex ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Extended____Nat__Oenat,type,
    numera1916890842035813515d_enat: num > extended_enat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Int__Oint,type,
    numeral_numeral_int: num > int ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Nat__Onat,type,
    numeral_numeral_nat: num > nat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Rat__Orat,type,
    numeral_numeral_rat: num > rat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Real__Oreal,type,
    numeral_numeral_real: num > real ).

thf(sy_c_Num_Opow,type,
    pow: num > num > num ).

thf(sy_c_Num_Opred__numeral,type,
    pred_numeral: num > nat ).

thf(sy_c_Num_Osqr,type,
    sqr: num > num ).

thf(sy_c_Option_Ooption_ONone_001t__Num__Onum,type,
    none_num: option_num ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    none_P5556105721700978146at_nat: option4927543243414619207at_nat ).

thf(sy_c_Option_Ooption_OSome_001t__Num__Onum,type,
    some_num: num > option_num ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    some_P7363390416028606310at_nat: product_prod_nat_nat > option4927543243414619207at_nat ).

thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    case_o184042715313410164at_nat: $o > ( product_prod_nat_nat > $o ) > option4927543243414619207at_nat > $o ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Int__Oint_001t__Num__Onum,type,
    case_option_int_num: int > ( num > int ) > option_num > int ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Num__Onum_001t__Num__Onum,type,
    case_option_num_num: num > ( num > num ) > option_num > num ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Num__Onum_J_001t__Num__Onum,type,
    case_o6005452278849405969um_num: option_num > ( num > option_num ) > option_num > option_num ).

thf(sy_c_Option_Ooption_Omap__option_001t__Num__Onum_001t__Num__Onum,type,
    map_option_num_num: ( num > num ) > option_num > option_num ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Extended____Nat__Oenat,type,
    bot_bo4199563552545308370d_enat: extended_enat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Nat__Onat,type,
    bot_bot_nat: nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Int__Oint_J,type,
    bot_bot_set_int: set_int ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Nat__Onat_J,type,
    bot_bot_set_nat: set_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Real__Oreal_J,type,
    bot_bot_set_real: set_real ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Code____Numeral__Ointeger,type,
    ord_le6747313008572928689nteger: code_integer > code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Extended____Nat__Oenat,type,
    ord_le72135733267957522d_enat: extended_enat > extended_enat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Int__Oint,type,
    ord_less_int: int > int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
    ord_less_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Num__Onum,type,
    ord_less_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Rat__Orat,type,
    ord_less_rat: rat > rat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Real__Oreal,type,
    ord_less_real: real > real > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Code____Numeral__Ointeger,type,
    ord_le3102999989581377725nteger: code_integer > code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Extended____Nat__Oenat,type,
    ord_le2932123472753598470d_enat: extended_enat > extended_enat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Filter__Ofilter_It__Nat__Onat_J,type,
    ord_le2510731241096832064er_nat: filter_nat > filter_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Filter__Ofilter_It__Real__Oreal_J,type,
    ord_le4104064031414453916r_real: filter_real > filter_real > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Int__Oint,type,
    ord_less_eq_int: int > int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat,type,
    ord_less_eq_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Num__Onum,type,
    ord_less_eq_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Rat__Orat,type,
    ord_less_eq_rat: rat > rat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Real__Oreal,type,
    ord_less_eq_real: real > real > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Complex__Ocomplex_J,type,
    ord_le211207098394363844omplex: set_complex > set_complex > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Int__Oint_J,type,
    ord_less_eq_set_int: set_int > set_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_eq_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ord_le3146513528884898305at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Real__Oreal_J,type,
    ord_less_eq_set_real: set_real > set_real > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__VEBT____Definitions__OVEBT_J,type,
    ord_le4337996190870823476T_VEBT: set_VEBT_VEBT > set_VEBT_VEBT > $o ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Extended____Nat__Oenat,type,
    ord_ma741700101516333627d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Int__Oint,type,
    ord_max_int: int > int > int ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Nat__Onat,type,
    ord_max_nat: nat > nat > nat ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Rat__Orat,type,
    ord_max_rat: rat > rat > rat ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Real__Oreal,type,
    ord_max_real: real > real > real ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Extended____Nat__Oenat,type,
    ord_mi8085742599997312461d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Nat__Onat,type,
    ord_min_nat: nat > nat > nat ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Nat__Onat,type,
    order_Greatest_nat: ( nat > $o ) > nat ).

thf(sy_c_Orderings_Oorder__class_Oantimono_001t__Nat__Onat_001t__Real__Oreal,type,
    order_9091379641038594480t_real: ( nat > real ) > $o ).

thf(sy_c_Orderings_Oorder__class_Omono_001t__Nat__Onat_001t__Nat__Onat,type,
    order_mono_nat_nat: ( nat > nat ) > $o ).

thf(sy_c_Orderings_Oorder__class_Omono_001t__Nat__Onat_001t__Real__Oreal,type,
    order_mono_nat_real: ( nat > real ) > $o ).

thf(sy_c_Orderings_Oorder__class_Ostrict__mono_001t__Nat__Onat_001t__Nat__Onat,type,
    order_5726023648592871131at_nat: ( nat > nat ) > $o ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_I_Eo_J,type,
    top_top_set_o: set_o ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Nat__Onat_J,type,
    top_top_set_nat: set_nat ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    top_to1996260823553986621t_unit: set_Product_unit ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Real__Oreal_J,type,
    top_top_set_real: set_real ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__String__Ochar_J,type,
    top_top_set_char: set_char ).

thf(sy_c_Power_Opower__class_Opower_001t__Complex__Ocomplex,type,
    power_power_complex: complex > nat > complex ).

thf(sy_c_Power_Opower__class_Opower_001t__Int__Oint,type,
    power_power_int: int > nat > int ).

thf(sy_c_Power_Opower__class_Opower_001t__Nat__Onat,type,
    power_power_nat: nat > nat > nat ).

thf(sy_c_Power_Opower__class_Opower_001t__Rat__Orat,type,
    power_power_rat: rat > nat > rat ).

thf(sy_c_Power_Opower__class_Opower_001t__Real__Oreal,type,
    power_power_real: real > nat > real ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Ointeger_001_Eo,type,
    produc6677183202524767010eger_o: code_integer > $o > produc6271795597528267376eger_o ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc1086072967326762835nteger: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_OPair_001t__Int__Oint_001t__Int__Oint,type,
    product_Pair_int_int: int > int > product_prod_int_int ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
    product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Num__Onum,type,
    product_Pair_nat_num: nat > num > product_prod_nat_num ).

thf(sy_c_Product__Type_OPair_001t__Num__Onum_001t__Num__Onum,type,
    product_Pair_num_num: num > num > product_prod_num_num ).

thf(sy_c_Product__Type_OPair_001t__VEBT____Definitions__OVEBT_001t__Nat__Onat,type,
    produc738532404422230701BT_nat: vEBT_VEBT > nat > produc9072475918466114483BT_nat ).

thf(sy_c_Product__Type_OSigma_001t__Nat__Onat_001t__Nat__Onat,type,
    produc457027306803732586at_nat: set_nat > ( nat > set_nat ) > set_Pr1261947904930325089at_nat ).

thf(sy_c_Product__Type_Oapsnd_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc6499014454317279255nteger: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Int__Oint,type,
    produc1553301316500091796er_int: ( code_integer > code_integer > int ) > produc8923325533196201883nteger > int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Nat__Onat,type,
    produc1555791787009142072er_nat: ( code_integer > code_integer > nat ) > produc8923325533196201883nteger > nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Num__Onum,type,
    produc7336495610019696514er_num: ( code_integer > code_integer > num ) > produc8923325533196201883nteger > num ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    produc9125791028180074456eger_o: ( code_integer > code_integer > produc6271795597528267376eger_o ) > produc8923325533196201883nteger > produc6271795597528267376eger_o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc6916734918728496179nteger: ( code_integer > code_integer > produc8923325533196201883nteger ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001_Eo,type,
    produc4947309494688390418_int_o: ( int > int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    produc8211389475949308722nt_int: ( int > int > int ) > product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc4245557441103728435nt_int: ( int > int > product_prod_int_int ) > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    produc8739625826339149834_nat_o: ( nat > nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc27273713700761075at_nat: ( nat > nat > product_prod_nat_nat > product_prod_nat_nat ) > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_Eo,type,
    produc6081775807080527818_nat_o: ( nat > nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    produc6842872674320459806at_nat: ( nat > nat > nat ) > product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc2626176000494625587at_nat: ( nat > nat > product_prod_nat_nat ) > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Num__Onum_001t__Option__Ooption_It__Num__Onum_J,type,
    produc478579273971653890on_num: ( nat > num > option_num ) > product_prod_nat_num > option_num ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Int__Oint_001t__Int__Oint,type,
    product_fst_int_int: product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__Nat__Onat,type,
    product_fst_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Int__Oint_001t__Int__Oint,type,
    product_snd_int_int: product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__Nat__Onat,type,
    product_snd_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Rat_OFract,type,
    fract: int > int > rat ).

thf(sy_c_Rat_OFrct,type,
    frct: product_prod_int_int > rat ).

thf(sy_c_Rat_ORep__Rat,type,
    rep_Rat: rat > product_prod_int_int ).

thf(sy_c_Rat_Ofield__char__0__class_ORats_001t__Real__Oreal,type,
    field_5140801741446780682s_real: set_real ).

thf(sy_c_Rat_Onormalize,type,
    normalize: product_prod_int_int > product_prod_int_int ).

thf(sy_c_Rat_Oof__int,type,
    of_int: int > rat ).

thf(sy_c_Rat_Opositive,type,
    positive: rat > $o ).

thf(sy_c_Rat_Oquotient__of,type,
    quotient_of: rat > product_prod_int_int ).

thf(sy_c_Real__Vector__Spaces_OReals_001t__Complex__Ocomplex,type,
    real_V2521375963428798218omplex: set_complex ).

thf(sy_c_Real__Vector__Spaces_Obounded__linear_001t__Real__Oreal_001t__Real__Oreal,type,
    real_V5970128139526366754l_real: ( real > real ) > $o ).

thf(sy_c_Real__Vector__Spaces_Onorm__class_Onorm_001t__Complex__Ocomplex,type,
    real_V1022390504157884413omplex: complex > real ).

thf(sy_c_Real__Vector__Spaces_Oof__real_001t__Complex__Ocomplex,type,
    real_V4546457046886955230omplex: real > complex ).

thf(sy_c_Real__Vector__Spaces_OscaleR__class_OscaleR_001t__Complex__Ocomplex,type,
    real_V2046097035970521341omplex: real > complex > complex ).

thf(sy_c_Real__Vector__Spaces_OscaleR__class_OscaleR_001t__Real__Oreal,type,
    real_V1485227260804924795R_real: real > real > real ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Code____Numeral__Ointeger,type,
    divide6298287555418463151nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Complex__Ocomplex,type,
    divide1717551699836669952omplex: complex > complex > complex ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Int__Oint,type,
    divide_divide_int: int > int > int ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Nat__Onat,type,
    divide_divide_nat: nat > nat > nat ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Rat__Orat,type,
    divide_divide_rat: rat > rat > rat ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Real__Oreal,type,
    divide_divide_real: real > real > real ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Code____Numeral__Ointeger,type,
    dvd_dvd_Code_integer: code_integer > code_integer > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Int__Oint,type,
    dvd_dvd_int: int > int > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Nat__Onat,type,
    dvd_dvd_nat: nat > nat > $o ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Code____Numeral__Ointeger,type,
    modulo364778990260209775nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Int__Oint,type,
    modulo_modulo_int: int > int > int ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Nat__Onat,type,
    modulo_modulo_nat: nat > nat > nat ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Code____Numeral__Ointeger,type,
    zero_n356916108424825756nteger: $o > code_integer ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Int__Oint,type,
    zero_n2684676970156552555ol_int: $o > int ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Nat__Onat,type,
    zero_n2687167440665602831ol_nat: $o > nat ).

thf(sy_c_Series_Osuminf_001t__Real__Oreal,type,
    suminf_real: ( nat > real ) > real ).

thf(sy_c_Series_Osummable_001t__Real__Oreal,type,
    summable_real: ( nat > real ) > $o ).

thf(sy_c_Series_Osums_001t__Real__Oreal,type,
    sums_real: ( nat > real ) > real > $o ).

thf(sy_c_Set_OCollect_001t__Complex__Ocomplex,type,
    collect_complex: ( complex > $o ) > set_complex ).

thf(sy_c_Set_OCollect_001t__Int__Oint,type,
    collect_int: ( int > $o ) > set_int ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Nat__Onat_J,type,
    collect_list_nat: ( list_nat > $o ) > set_list_nat ).

thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
    collect_nat: ( nat > $o ) > set_nat ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    collec213857154873943460nt_int: ( product_prod_int_int > $o ) > set_Pr958786334691620121nt_int ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    collec3392354462482085612at_nat: ( product_prod_nat_nat > $o ) > set_Pr1261947904930325089at_nat ).

thf(sy_c_Set_OCollect_001t__Real__Oreal,type,
    collect_real: ( real > $o ) > set_real ).

thf(sy_c_Set_Oimage_001t__Int__Oint_001t__Int__Oint,type,
    image_int_int: ( int > int ) > set_int > set_int ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Int__Oint,type,
    image_nat_int: ( nat > int ) > set_nat > set_int ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Nat__Onat,type,
    image_nat_nat: ( nat > nat ) > set_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Real__Oreal,type,
    image_nat_real: ( nat > real ) > set_nat > set_real ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__String__Ochar,type,
    image_nat_char: ( nat > char ) > set_nat > set_char ).

thf(sy_c_Set_Oimage_001t__Real__Oreal_001t__Real__Oreal,type,
    image_real_real: ( real > real ) > set_real > set_real ).

thf(sy_c_Set_Oimage_001t__String__Ochar_001t__Nat__Onat,type,
    image_char_nat: ( char > nat ) > set_char > set_nat ).

thf(sy_c_Set_Oinsert_001t__Int__Oint,type,
    insert_int: int > set_int > set_int ).

thf(sy_c_Set_Oinsert_001t__Nat__Onat,type,
    insert_nat: nat > set_nat > set_nat ).

thf(sy_c_Set_Oinsert_001t__Real__Oreal,type,
    insert_real: real > set_real > set_real ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Nat__Onat,type,
    set_fo2584398358068434914at_nat: ( nat > nat > nat ) > nat > nat > nat > nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Int__Oint,type,
    set_or1266510415728281911st_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Nat__Onat,type,
    set_or1269000886237332187st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Real__Oreal,type,
    set_or1222579329274155063t_real: real > real > set_real ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Int__Oint,type,
    set_or4662586982721622107an_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Nat__Onat,type,
    set_or4665077453230672383an_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeast_001t__Nat__Onat,type,
    set_ord_atLeast_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeast_001t__Real__Oreal,type,
    set_ord_atLeast_real: real > set_real ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Int__Oint,type,
    set_ord_atMost_int: int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Nat__Onat,type,
    set_ord_atMost_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Int__Oint,type,
    set_or6656581121297822940st_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Nat__Onat,type,
    set_or6659071591806873216st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Int__Oint,type,
    set_or5832277885323065728an_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Nat__Onat,type,
    set_or5834768355832116004an_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Real__Oreal,type,
    set_or1633881224788618240n_real: real > real > set_real ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThan_001t__Nat__Onat,type,
    set_or1210151606488870762an_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThan_001t__Real__Oreal,type,
    set_or5849166863359141190n_real: real > set_real ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Int__Oint,type,
    set_ord_lessThan_int: int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Nat__Onat,type,
    set_ord_lessThan_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Real__Oreal,type,
    set_or5984915006950818249n_real: real > set_real ).

thf(sy_c_String_Oascii__of,type,
    ascii_of: char > char ).

thf(sy_c_String_Ochar_OChar,type,
    char2: $o > $o > $o > $o > $o > $o > $o > $o > char ).

thf(sy_c_String_Ocomm__semiring__1__class_Oof__char_001t__Nat__Onat,type,
    comm_s629917340098488124ar_nat: char > nat ).

thf(sy_c_String_Ointeger__of__char,type,
    integer_of_char: char > code_integer ).

thf(sy_c_String_Ounique__euclidean__semiring__with__bit__operations__class_Ochar__of_001t__Nat__Onat,type,
    unique3096191561947761185of_nat: nat > char ).

thf(sy_c_Topological__Spaces_Ocontinuous_001t__Real__Oreal_001t__Real__Oreal,type,
    topolo4422821103128117721l_real: filter_real > ( real > real ) > $o ).

thf(sy_c_Topological__Spaces_Ocontinuous__on_001t__Real__Oreal_001t__Real__Oreal,type,
    topolo5044208981011980120l_real: set_real > ( real > real ) > $o ).

thf(sy_c_Topological__Spaces_Omonoseq_001t__Real__Oreal,type,
    topolo6980174941875973593q_real: ( nat > real ) > $o ).

thf(sy_c_Topological__Spaces_Otopological__space__class_Oat__within_001t__Real__Oreal,type,
    topolo2177554685111907308n_real: real > set_real > filter_real ).

thf(sy_c_Topological__Spaces_Otopological__space__class_Onhds_001t__Real__Oreal,type,
    topolo2815343760600316023s_real: real > filter_real ).

thf(sy_c_Topological__Spaces_Ouniform__space__class_OCauchy_001t__Real__Oreal,type,
    topolo4055970368930404560y_real: ( nat > real ) > $o ).

thf(sy_c_Transcendental_Oarccos,type,
    arccos: real > real ).

thf(sy_c_Transcendental_Oarcosh_001t__Real__Oreal,type,
    arcosh_real: real > real ).

thf(sy_c_Transcendental_Oarcsin,type,
    arcsin: real > real ).

thf(sy_c_Transcendental_Oarctan,type,
    arctan: real > real ).

thf(sy_c_Transcendental_Oarsinh_001t__Real__Oreal,type,
    arsinh_real: real > real ).

thf(sy_c_Transcendental_Oartanh_001t__Real__Oreal,type,
    artanh_real: real > real ).

thf(sy_c_Transcendental_Ocos_001t__Real__Oreal,type,
    cos_real: real > real ).

thf(sy_c_Transcendental_Ocos__coeff,type,
    cos_coeff: nat > real ).

thf(sy_c_Transcendental_Ocosh_001t__Real__Oreal,type,
    cosh_real: real > real ).

thf(sy_c_Transcendental_Ocot_001t__Real__Oreal,type,
    cot_real: real > real ).

thf(sy_c_Transcendental_Oexp_001t__Complex__Ocomplex,type,
    exp_complex: complex > complex ).

thf(sy_c_Transcendental_Oexp_001t__Real__Oreal,type,
    exp_real: real > real ).

thf(sy_c_Transcendental_Oln__class_Oln_001t__Real__Oreal,type,
    ln_ln_real: real > real ).

thf(sy_c_Transcendental_Olog,type,
    log: real > real > real ).

thf(sy_c_Transcendental_Opi,type,
    pi: real ).

thf(sy_c_Transcendental_Opowr_001t__Real__Oreal,type,
    powr_real: real > real > real ).

thf(sy_c_Transcendental_Osin_001t__Real__Oreal,type,
    sin_real: real > real ).

thf(sy_c_Transcendental_Osin__coeff,type,
    sin_coeff: nat > real ).

thf(sy_c_Transcendental_Osinh_001t__Real__Oreal,type,
    sinh_real: real > real ).

thf(sy_c_Transcendental_Otan_001t__Real__Oreal,type,
    tan_real: real > real ).

thf(sy_c_Transcendental_Otanh_001t__Real__Oreal,type,
    tanh_real: real > real ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Nat__Onat,type,
    transi2905341329935302413cl_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Nat__Onat,type,
    transi6264000038957366511cl_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_VEBT__Definitions_OVEBT_OLeaf,type,
    vEBT_Leaf: $o > $o > vEBT_VEBT ).

thf(sy_c_VEBT__Definitions_OVEBT_ONode,type,
    vEBT_Node: option4927543243414619207at_nat > nat > list_VEBT_VEBT > vEBT_VEBT > vEBT_VEBT ).

thf(sy_c_VEBT__Definitions_OVEBT_Osize__VEBT,type,
    vEBT_size_VEBT: vEBT_VEBT > nat ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Oboth__member__options,type,
    vEBT_V8194947554948674370ptions: vEBT_VEBT > nat > $o ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Ohigh,type,
    vEBT_VEBT_high: nat > nat > nat ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Oin__children,type,
    vEBT_V5917875025757280293ildren: nat > list_VEBT_VEBT > nat > $o ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Olow,type,
    vEBT_VEBT_low: nat > nat > nat ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Omembermima,type,
    vEBT_VEBT_membermima: vEBT_VEBT > nat > $o ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Omembermima__rel,type,
    vEBT_V4351362008482014158ma_rel: produc9072475918466114483BT_nat > produc9072475918466114483BT_nat > $o ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Onaive__member,type,
    vEBT_V5719532721284313246member: vEBT_VEBT > nat > $o ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Onaive__member__rel,type,
    vEBT_V5765760719290551771er_rel: produc9072475918466114483BT_nat > produc9072475918466114483BT_nat > $o ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Ovalid_H,type,
    vEBT_VEBT_valid: vEBT_VEBT > nat > $o ).

thf(sy_c_VEBT__Definitions_OVEBT__internal_Ovalid_H__rel,type,
    vEBT_VEBT_valid_rel: produc9072475918466114483BT_nat > produc9072475918466114483BT_nat > $o ).

thf(sy_c_VEBT__Definitions_Oinvar__vebt,type,
    vEBT_invar_vebt: vEBT_VEBT > nat > $o ).

thf(sy_c_VEBT__Definitions_Oset__vebt,type,
    vEBT_set_vebt: vEBT_VEBT > set_nat ).

thf(sy_c_VEBT__Definitions_Ovebt__buildup,type,
    vEBT_vebt_buildup: nat > vEBT_VEBT ).

thf(sy_c_VEBT__Definitions_Ovebt__buildup__rel,type,
    vEBT_v4011308405150292612up_rel: nat > nat > $o ).

thf(sy_c_VEBT__Insert_Ovebt__insert,type,
    vEBT_vebt_insert: vEBT_VEBT > nat > vEBT_VEBT ).

thf(sy_c_VEBT__Insert_Ovebt__insert__rel,type,
    vEBT_vebt_insert_rel: produc9072475918466114483BT_nat > produc9072475918466114483BT_nat > $o ).

thf(sy_c_VEBT__Member_OVEBT__internal_Obit__concat,type,
    vEBT_VEBT_bit_concat: nat > nat > nat > nat ).

thf(sy_c_VEBT__Member_OVEBT__internal_OminNull,type,
    vEBT_VEBT_minNull: vEBT_VEBT > $o ).

thf(sy_c_VEBT__Member_OVEBT__internal_OminNull__rel,type,
    vEBT_V6963167321098673237ll_rel: vEBT_VEBT > vEBT_VEBT > $o ).

thf(sy_c_VEBT__Member_OVEBT__internal_Oset__vebt_H,type,
    vEBT_VEBT_set_vebt: vEBT_VEBT > set_nat ).

thf(sy_c_VEBT__Member_Ovebt__member,type,
    vEBT_vebt_member: vEBT_VEBT > nat > $o ).

thf(sy_c_VEBT__Member_Ovebt__member__rel,type,
    vEBT_vebt_member_rel: produc9072475918466114483BT_nat > produc9072475918466114483BT_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__Nat__Onat_J,type,
    accp_list_nat: ( list_nat > list_nat > $o ) > list_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Nat__Onat,type,
    accp_nat: ( nat > nat > $o ) > nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    accp_P1096762738010456898nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    accp_P4275260045618599050at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Num__Onum_Mt__Num__Onum_J,type,
    accp_P3113834385874906142um_num: ( product_prod_num_num > product_prod_num_num > $o ) > product_prod_num_num > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__VEBT____Definitions__OVEBT_Mt__Nat__Onat_J,type,
    accp_P2887432264394892906BT_nat: ( produc9072475918466114483BT_nat > produc9072475918466114483BT_nat > $o ) > produc9072475918466114483BT_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__VEBT____Definitions__OVEBT,type,
    accp_VEBT_VEBT: ( vEBT_VEBT > vEBT_VEBT > $o ) > vEBT_VEBT > $o ).

thf(sy_c_Wellfounded_Opred__nat,type,
    pred_nat: set_Pr1261947904930325089at_nat ).

thf(sy_c_fChoice_001t__Real__Oreal,type,
    fChoice_real: ( real > $o ) > real ).

thf(sy_c_member_001_Eo,type,
    member_o: $o > set_o > $o ).

thf(sy_c_member_001t__Complex__Ocomplex,type,
    member_complex: complex > set_complex > $o ).

thf(sy_c_member_001t__Int__Oint,type,
    member_int: int > set_int > $o ).

thf(sy_c_member_001t__List__Olist_It__Nat__Onat_J,type,
    member_list_nat: list_nat > set_list_nat > $o ).

thf(sy_c_member_001t__Nat__Onat,type,
    member_nat: nat > set_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    member8440522571783428010at_nat: product_prod_nat_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_member_001t__Real__Oreal,type,
    member_real: real > set_real > $o ).

thf(sy_c_member_001t__VEBT____Definitions__OVEBT,type,
    member_VEBT_VEBT: vEBT_VEBT > set_VEBT_VEBT > $o ).

thf(sy_v_deg____,type,
    deg: nat ).

thf(sy_v_m____,type,
    m: nat ).

thf(sy_v_ma____,type,
    ma: nat ).

thf(sy_v_mi____,type,
    mi: nat ).

thf(sy_v_na____,type,
    na: nat ).

thf(sy_v_summary____,type,
    summary: vEBT_VEBT ).

thf(sy_v_treeList____,type,
    treeList: list_VEBT_VEBT ).

thf(sy_v_xa____,type,
    xa: nat ).

% Relevant facts (3076)
thf(fact_0_abcdef,axiom,
    ord_less_nat @ mi @ xa ).

% abcdef
thf(fact_1__C4_Ohyps_C_I7_J,axiom,
    ord_less_eq_nat @ mi @ ma ).

% "4.hyps"(7)
thf(fact_2_False,axiom,
    ~ ( ( xa = mi )
      | ( xa = ma ) ) ).

% False
thf(fact_3__092_060open_062mi_A_092_060noteq_062_Amax_Ama_Ax_092_060close_062,axiom,
    ( mi
   != ( ord_max_nat @ ma @ xa ) ) ).

% \<open>mi \<noteq> max ma x\<close>
thf(fact_4__C8_C,axiom,
    na = m ).

% "8"
thf(fact_5_bit__split__inv,axiom,
    ! [X: nat,D: nat] :
      ( ( vEBT_VEBT_bit_concat @ ( vEBT_VEBT_high @ X @ D ) @ ( vEBT_VEBT_low @ X @ D ) @ D )
      = X ) ).

% bit_split_inv
thf(fact_6_mimaxrel,axiom,
    ( ( xa != mi )
    & ( xa != ma ) ) ).

% mimaxrel
thf(fact_7_high__bound__aux,axiom,
    ! [Ma: nat,N: nat,M: nat] :
      ( ( ord_less_nat @ Ma @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ N @ M ) ) )
     => ( ord_less_nat @ ( vEBT_VEBT_high @ Ma @ N ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) ) ).

% high_bound_aux
thf(fact_8__C3_C,axiom,
    ( deg
    = ( plus_plus_nat @ na @ m ) ) ).

% "3"
thf(fact_9__C4_Oprems_C,axiom,
    ord_less_nat @ xa @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ deg ) ).

% "4.prems"
thf(fact_10__C7_C,axiom,
    ( ( mi != ma )
   => ! [I: nat] :
        ( ( ord_less_nat @ I @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ m ) )
       => ( ( ( ( vEBT_VEBT_high @ ma @ na )
              = I )
           => ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ treeList @ I ) @ ( vEBT_VEBT_low @ ma @ na ) ) )
          & ! [Y: nat] :
              ( ( ( ( vEBT_VEBT_high @ Y @ na )
                  = I )
                & ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ treeList @ I ) @ ( vEBT_VEBT_low @ Y @ na ) ) )
             => ( ( ord_less_nat @ mi @ Y )
                & ( ord_less_eq_nat @ Y @ ma ) ) ) ) ) ) ).

% "7"
thf(fact_11__C4_Ohyps_C_I8_J,axiom,
    ord_less_nat @ ma @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ deg ) ).

% "4.hyps"(8)
thf(fact_12_highlowprop,axiom,
    ( ( ord_less_nat @ ( vEBT_VEBT_high @ xa @ na ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ m ) )
    & ( ord_less_nat @ ( vEBT_VEBT_low @ xa @ na ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ na ) ) ) ).

% highlowprop
thf(fact_13__C4_C,axiom,
    ! [I: nat] :
      ( ( ord_less_nat @ I @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ m ) )
     => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ treeList @ I ) @ X2 ) )
        = ( vEBT_V8194947554948674370ptions @ summary @ I ) ) ) ).

% "4"
thf(fact_14__C5_C,axiom,
    ( ( mi = ma )
   => ! [X3: vEBT_VEBT] :
        ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ treeList ) )
       => ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ X3 @ X_1 ) ) ) ).

% "5"
thf(fact_15__C2_C,axiom,
    ( ( size_s6755466524823107622T_VEBT @ treeList )
    = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ m ) ) ).

% "2"
thf(fact_16__C15_C,axiom,
    ( ( ord_less_eq_nat @ mi @ ( ord_max_nat @ ma @ xa ) )
    & ( ord_less_nat @ ( ord_max_nat @ ma @ xa ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ deg ) ) ) ).

% "15"
thf(fact_17_in__children__def,axiom,
    ( vEBT_V5917875025757280293ildren
    = ( ^ [N2: nat,TreeList: list_VEBT_VEBT,X4: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList @ ( vEBT_VEBT_high @ X4 @ N2 ) ) @ ( vEBT_VEBT_low @ X4 @ N2 ) ) ) ) ).

% in_children_def
thf(fact_18__C6_C,axiom,
    ( ( ord_less_eq_nat @ mi @ ma )
    & ( ord_less_nat @ ma @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ deg ) ) ) ).

% "6"
thf(fact_19__C14_C,axiom,
    ( ( mi
      = ( ord_max_nat @ ma @ xa ) )
   => ! [X3: vEBT_VEBT] :
        ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ ( append_VEBT_VEBT @ ( take_VEBT_VEBT @ ( vEBT_VEBT_high @ xa @ na ) @ treeList ) @ ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) @ ( vEBT_VEBT_low @ xa @ na ) ) @ nil_VEBT_VEBT ) @ ( drop_VEBT_VEBT @ ( plus_plus_nat @ ( vEBT_VEBT_high @ xa @ na ) @ one_one_nat ) @ treeList ) ) ) ) )
       => ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ X3 @ X_1 ) ) ) ).

% "14"
thf(fact_20_power__increasing__iff,axiom,
    ! [B: real,X: nat,Y2: nat] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_eq_real @ ( power_power_real @ B @ X ) @ ( power_power_real @ B @ Y2 ) )
        = ( ord_less_eq_nat @ X @ Y2 ) ) ) ).

% power_increasing_iff
thf(fact_21_power__increasing__iff,axiom,
    ! [B: rat,X: nat,Y2: nat] :
      ( ( ord_less_rat @ one_one_rat @ B )
     => ( ( ord_less_eq_rat @ ( power_power_rat @ B @ X ) @ ( power_power_rat @ B @ Y2 ) )
        = ( ord_less_eq_nat @ X @ Y2 ) ) ) ).

% power_increasing_iff
thf(fact_22_power__increasing__iff,axiom,
    ! [B: nat,X: nat,Y2: nat] :
      ( ( ord_less_nat @ one_one_nat @ B )
     => ( ( ord_less_eq_nat @ ( power_power_nat @ B @ X ) @ ( power_power_nat @ B @ Y2 ) )
        = ( ord_less_eq_nat @ X @ Y2 ) ) ) ).

% power_increasing_iff
thf(fact_23_power__increasing__iff,axiom,
    ! [B: int,X: nat,Y2: nat] :
      ( ( ord_less_int @ one_one_int @ B )
     => ( ( ord_less_eq_int @ ( power_power_int @ B @ X ) @ ( power_power_int @ B @ Y2 ) )
        = ( ord_less_eq_nat @ X @ Y2 ) ) ) ).

% power_increasing_iff
thf(fact_24_one__add__one,axiom,
    ( ( plus_plus_complex @ one_one_complex @ one_one_complex )
    = ( numera6690914467698888265omplex @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_25_one__add__one,axiom,
    ( ( plus_plus_real @ one_one_real @ one_one_real )
    = ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_26_one__add__one,axiom,
    ( ( plus_plus_rat @ one_one_rat @ one_one_rat )
    = ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_27_one__add__one,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_28_one__add__one,axiom,
    ( ( plus_plus_int @ one_one_int @ one_one_int )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_29_power__strict__increasing__iff,axiom,
    ! [B: real,X: nat,Y2: nat] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ ( power_power_real @ B @ X ) @ ( power_power_real @ B @ Y2 ) )
        = ( ord_less_nat @ X @ Y2 ) ) ) ).

% power_strict_increasing_iff
thf(fact_30_power__strict__increasing__iff,axiom,
    ! [B: rat,X: nat,Y2: nat] :
      ( ( ord_less_rat @ one_one_rat @ B )
     => ( ( ord_less_rat @ ( power_power_rat @ B @ X ) @ ( power_power_rat @ B @ Y2 ) )
        = ( ord_less_nat @ X @ Y2 ) ) ) ).

% power_strict_increasing_iff
thf(fact_31_power__strict__increasing__iff,axiom,
    ! [B: nat,X: nat,Y2: nat] :
      ( ( ord_less_nat @ one_one_nat @ B )
     => ( ( ord_less_nat @ ( power_power_nat @ B @ X ) @ ( power_power_nat @ B @ Y2 ) )
        = ( ord_less_nat @ X @ Y2 ) ) ) ).

% power_strict_increasing_iff
thf(fact_32_power__strict__increasing__iff,axiom,
    ! [B: int,X: nat,Y2: nat] :
      ( ( ord_less_int @ one_one_int @ B )
     => ( ( ord_less_int @ ( power_power_int @ B @ X ) @ ( power_power_int @ B @ Y2 ) )
        = ( ord_less_nat @ X @ Y2 ) ) ) ).

% power_strict_increasing_iff
thf(fact_33_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_complex @ ( numera6690914467698888265omplex @ N ) @ one_one_complex )
      = ( numera6690914467698888265omplex @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_34_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_real @ ( numeral_numeral_real @ N ) @ one_one_real )
      = ( numeral_numeral_real @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_35_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ N ) @ one_one_rat )
      = ( numeral_numeral_rat @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_36_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_37_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ N ) @ one_one_int )
      = ( numeral_numeral_int @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_38_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_complex @ one_one_complex @ ( numera6690914467698888265omplex @ N ) )
      = ( numera6690914467698888265omplex @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_39_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_real @ one_one_real @ ( numeral_numeral_real @ N ) )
      = ( numeral_numeral_real @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_40_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) )
      = ( numeral_numeral_rat @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_41_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_42_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_43_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_real @ one_one_real @ ( numeral_numeral_real @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_44_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_45_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_46_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_47_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_real @ ( numeral_numeral_real @ N ) @ one_one_real )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_48_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ N ) @ one_one_rat )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_49_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_50_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ one_one_int )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_51__C13_C,axiom,
    ! [I: nat] :
      ( ( ord_less_nat @ I @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ m ) )
     => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ ( append_VEBT_VEBT @ ( take_VEBT_VEBT @ ( vEBT_VEBT_high @ xa @ na ) @ treeList ) @ ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) @ ( vEBT_VEBT_low @ xa @ na ) ) @ nil_VEBT_VEBT ) @ ( drop_VEBT_VEBT @ ( plus_plus_nat @ ( vEBT_VEBT_high @ xa @ na ) @ one_one_nat ) @ treeList ) ) ) @ I ) @ X2 ) )
        = ( vEBT_V8194947554948674370ptions @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) ) @ ( vEBT_vebt_insert @ summary @ ( vEBT_VEBT_high @ xa @ na ) ) @ summary ) @ I ) ) ) ).

% "13"
thf(fact_52_not__min__Null__member,axiom,
    ! [T: vEBT_VEBT] :
      ( ~ ( vEBT_VEBT_minNull @ T )
     => ? [X_12: nat] : ( vEBT_V8194947554948674370ptions @ T @ X_12 ) ) ).

% not_min_Null_member
thf(fact_53_inthall,axiom,
    ! [Xs: list_P6011104703257516679at_nat,P: product_prod_nat_nat > $o,N: nat] :
      ( ! [X5: product_prod_nat_nat] :
          ( ( member8440522571783428010at_nat @ X5 @ ( set_Pr5648618587558075414at_nat @ Xs ) )
         => ( P @ X5 ) )
     => ( ( ord_less_nat @ N @ ( size_s5460976970255530739at_nat @ Xs ) )
       => ( P @ ( nth_Pr7617993195940197384at_nat @ Xs @ N ) ) ) ) ).

% inthall
thf(fact_54_inthall,axiom,
    ! [Xs: list_complex,P: complex > $o,N: nat] :
      ( ! [X5: complex] :
          ( ( member_complex @ X5 @ ( set_complex2 @ Xs ) )
         => ( P @ X5 ) )
     => ( ( ord_less_nat @ N @ ( size_s3451745648224563538omplex @ Xs ) )
       => ( P @ ( nth_complex @ Xs @ N ) ) ) ) ).

% inthall
thf(fact_55_inthall,axiom,
    ! [Xs: list_real,P: real > $o,N: nat] :
      ( ! [X5: real] :
          ( ( member_real @ X5 @ ( set_real2 @ Xs ) )
         => ( P @ X5 ) )
     => ( ( ord_less_nat @ N @ ( size_size_list_real @ Xs ) )
       => ( P @ ( nth_real @ Xs @ N ) ) ) ) ).

% inthall
thf(fact_56_inthall,axiom,
    ! [Xs: list_VEBT_VEBT,P: vEBT_VEBT > $o,N: nat] :
      ( ! [X5: vEBT_VEBT] :
          ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ Xs ) )
         => ( P @ X5 ) )
     => ( ( ord_less_nat @ N @ ( size_s6755466524823107622T_VEBT @ Xs ) )
       => ( P @ ( nth_VEBT_VEBT @ Xs @ N ) ) ) ) ).

% inthall
thf(fact_57_inthall,axiom,
    ! [Xs: list_o,P: $o > $o,N: nat] :
      ( ! [X5: $o] :
          ( ( member_o @ X5 @ ( set_o2 @ Xs ) )
         => ( P @ X5 ) )
     => ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
       => ( P @ ( nth_o @ Xs @ N ) ) ) ) ).

% inthall
thf(fact_58_inthall,axiom,
    ! [Xs: list_nat,P: nat > $o,N: nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ ( set_nat2 @ Xs ) )
         => ( P @ X5 ) )
     => ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( P @ ( nth_nat @ Xs @ N ) ) ) ) ).

% inthall
thf(fact_59_inthall,axiom,
    ! [Xs: list_int,P: int > $o,N: nat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ ( set_int2 @ Xs ) )
         => ( P @ X5 ) )
     => ( ( ord_less_nat @ N @ ( size_size_list_int @ Xs ) )
       => ( P @ ( nth_int @ Xs @ N ) ) ) ) ).

% inthall
thf(fact_60_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numera6690914467698888265omplex @ M )
        = ( numera6690914467698888265omplex @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_61_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_real @ M )
        = ( numeral_numeral_real @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_62_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_rat @ M )
        = ( numeral_numeral_rat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_63_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_nat @ M )
        = ( numeral_numeral_nat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_64_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_int @ M )
        = ( numeral_numeral_int @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_65_concat__inth,axiom,
    ! [Xs: list_VEBT_VEBT,X: vEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( nth_VEBT_VEBT @ ( append_VEBT_VEBT @ Xs @ ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ X @ nil_VEBT_VEBT ) @ Ys ) ) @ ( size_s6755466524823107622T_VEBT @ Xs ) )
      = X ) ).

% concat_inth
thf(fact_66_concat__inth,axiom,
    ! [Xs: list_o,X: $o,Ys: list_o] :
      ( ( nth_o @ ( append_o @ Xs @ ( append_o @ ( cons_o @ X @ nil_o ) @ Ys ) ) @ ( size_size_list_o @ Xs ) )
      = X ) ).

% concat_inth
thf(fact_67_concat__inth,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat] :
      ( ( nth_nat @ ( append_nat @ Xs @ ( append_nat @ ( cons_nat @ X @ nil_nat ) @ Ys ) ) @ ( size_size_list_nat @ Xs ) )
      = X ) ).

% concat_inth
thf(fact_68_concat__inth,axiom,
    ! [Xs: list_int,X: int,Ys: list_int] :
      ( ( nth_int @ ( append_int @ Xs @ ( append_int @ ( cons_int @ X @ nil_int ) @ Ys ) ) @ ( size_size_list_int @ Xs ) )
      = X ) ).

% concat_inth
thf(fact_69_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_rat @ one_one_rat @ N )
      = one_one_rat ) ).

% power_one
thf(fact_70_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ one_one_nat @ N )
      = one_one_nat ) ).

% power_one
thf(fact_71_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_real @ one_one_real @ N )
      = one_one_real ) ).

% power_one
thf(fact_72_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_int @ one_one_int @ N )
      = one_one_int ) ).

% power_one
thf(fact_73_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_complex @ one_one_complex @ N )
      = one_one_complex ) ).

% power_one
thf(fact_74_power__one__right,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_75_power__one__right,axiom,
    ! [A: real] :
      ( ( power_power_real @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_76_power__one__right,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_77_power__one__right,axiom,
    ! [A: complex] :
      ( ( power_power_complex @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_78_nth__repl,axiom,
    ! [M: nat,Xs: list_VEBT_VEBT,N: nat,X: vEBT_VEBT] :
      ( ( ord_less_nat @ M @ ( size_s6755466524823107622T_VEBT @ Xs ) )
     => ( ( ord_less_nat @ N @ ( size_s6755466524823107622T_VEBT @ Xs ) )
       => ( ( M != N )
         => ( ( nth_VEBT_VEBT @ ( append_VEBT_VEBT @ ( take_VEBT_VEBT @ N @ Xs ) @ ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ X @ nil_VEBT_VEBT ) @ ( drop_VEBT_VEBT @ ( plus_plus_nat @ N @ one_one_nat ) @ Xs ) ) ) @ M )
            = ( nth_VEBT_VEBT @ Xs @ M ) ) ) ) ) ).

% nth_repl
thf(fact_79_nth__repl,axiom,
    ! [M: nat,Xs: list_o,N: nat,X: $o] :
      ( ( ord_less_nat @ M @ ( size_size_list_o @ Xs ) )
     => ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
       => ( ( M != N )
         => ( ( nth_o @ ( append_o @ ( take_o @ N @ Xs ) @ ( append_o @ ( cons_o @ X @ nil_o ) @ ( drop_o @ ( plus_plus_nat @ N @ one_one_nat ) @ Xs ) ) ) @ M )
            = ( nth_o @ Xs @ M ) ) ) ) ) ).

% nth_repl
thf(fact_80_nth__repl,axiom,
    ! [M: nat,Xs: list_nat,N: nat,X: nat] :
      ( ( ord_less_nat @ M @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( M != N )
         => ( ( nth_nat @ ( append_nat @ ( take_nat @ N @ Xs ) @ ( append_nat @ ( cons_nat @ X @ nil_nat ) @ ( drop_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ Xs ) ) ) @ M )
            = ( nth_nat @ Xs @ M ) ) ) ) ) ).

% nth_repl
thf(fact_81_nth__repl,axiom,
    ! [M: nat,Xs: list_int,N: nat,X: int] :
      ( ( ord_less_nat @ M @ ( size_size_list_int @ Xs ) )
     => ( ( ord_less_nat @ N @ ( size_size_list_int @ Xs ) )
       => ( ( M != N )
         => ( ( nth_int @ ( append_int @ ( take_int @ N @ Xs ) @ ( append_int @ ( cons_int @ X @ nil_int ) @ ( drop_int @ ( plus_plus_nat @ N @ one_one_nat ) @ Xs ) ) ) @ M )
            = ( nth_int @ Xs @ M ) ) ) ) ) ).

% nth_repl
thf(fact_82_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_complex
        = ( numera6690914467698888265omplex @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_83_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_real
        = ( numeral_numeral_real @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_84_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_rat
        = ( numeral_numeral_rat @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_85_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_nat
        = ( numeral_numeral_nat @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_86_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_int
        = ( numeral_numeral_int @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_87_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numera6690914467698888265omplex @ N )
        = one_one_complex )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_88_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_real @ N )
        = one_one_real )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_89_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_rat @ N )
        = one_one_rat )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_90_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_nat @ N )
        = one_one_nat )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_91_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_int @ N )
        = one_one_int )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_92_power__inject__exp,axiom,
    ! [A: real,M: nat,N: nat] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ( power_power_real @ A @ M )
          = ( power_power_real @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_93_power__inject__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ( power_power_rat @ A @ M )
          = ( power_power_rat @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_94_power__inject__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ( power_power_nat @ A @ M )
          = ( power_power_nat @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_95_power__inject__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ( power_power_int @ A @ M )
          = ( power_power_int @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_96_max__number__of_I1_J,axiom,
    ! [U: num,V: num] :
      ( ( ( ord_le2932123472753598470d_enat @ ( numera1916890842035813515d_enat @ U ) @ ( numera1916890842035813515d_enat @ V ) )
       => ( ( ord_ma741700101516333627d_enat @ ( numera1916890842035813515d_enat @ U ) @ ( numera1916890842035813515d_enat @ V ) )
          = ( numera1916890842035813515d_enat @ V ) ) )
      & ( ~ ( ord_le2932123472753598470d_enat @ ( numera1916890842035813515d_enat @ U ) @ ( numera1916890842035813515d_enat @ V ) )
       => ( ( ord_ma741700101516333627d_enat @ ( numera1916890842035813515d_enat @ U ) @ ( numera1916890842035813515d_enat @ V ) )
          = ( numera1916890842035813515d_enat @ U ) ) ) ) ).

% max_number_of(1)
thf(fact_97_max__number__of_I1_J,axiom,
    ! [U: num,V: num] :
      ( ( ( ord_less_eq_real @ ( numeral_numeral_real @ U ) @ ( numeral_numeral_real @ V ) )
       => ( ( ord_max_real @ ( numeral_numeral_real @ U ) @ ( numeral_numeral_real @ V ) )
          = ( numeral_numeral_real @ V ) ) )
      & ( ~ ( ord_less_eq_real @ ( numeral_numeral_real @ U ) @ ( numeral_numeral_real @ V ) )
       => ( ( ord_max_real @ ( numeral_numeral_real @ U ) @ ( numeral_numeral_real @ V ) )
          = ( numeral_numeral_real @ U ) ) ) ) ).

% max_number_of(1)
thf(fact_98_max__number__of_I1_J,axiom,
    ! [U: num,V: num] :
      ( ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ U ) @ ( numeral_numeral_rat @ V ) )
       => ( ( ord_max_rat @ ( numeral_numeral_rat @ U ) @ ( numeral_numeral_rat @ V ) )
          = ( numeral_numeral_rat @ V ) ) )
      & ( ~ ( ord_less_eq_rat @ ( numeral_numeral_rat @ U ) @ ( numeral_numeral_rat @ V ) )
       => ( ( ord_max_rat @ ( numeral_numeral_rat @ U ) @ ( numeral_numeral_rat @ V ) )
          = ( numeral_numeral_rat @ U ) ) ) ) ).

% max_number_of(1)
thf(fact_99_max__number__of_I1_J,axiom,
    ! [U: num,V: num] :
      ( ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ U ) @ ( numeral_numeral_nat @ V ) )
       => ( ( ord_max_nat @ ( numeral_numeral_nat @ U ) @ ( numeral_numeral_nat @ V ) )
          = ( numeral_numeral_nat @ V ) ) )
      & ( ~ ( ord_less_eq_nat @ ( numeral_numeral_nat @ U ) @ ( numeral_numeral_nat @ V ) )
       => ( ( ord_max_nat @ ( numeral_numeral_nat @ U ) @ ( numeral_numeral_nat @ V ) )
          = ( numeral_numeral_nat @ U ) ) ) ) ).

% max_number_of(1)
thf(fact_100_max__number__of_I1_J,axiom,
    ! [U: num,V: num] :
      ( ( ( ord_less_eq_int @ ( numeral_numeral_int @ U ) @ ( numeral_numeral_int @ V ) )
       => ( ( ord_max_int @ ( numeral_numeral_int @ U ) @ ( numeral_numeral_int @ V ) )
          = ( numeral_numeral_int @ V ) ) )
      & ( ~ ( ord_less_eq_int @ ( numeral_numeral_int @ U ) @ ( numeral_numeral_int @ V ) )
       => ( ( ord_max_int @ ( numeral_numeral_int @ U ) @ ( numeral_numeral_int @ V ) )
          = ( numeral_numeral_int @ U ) ) ) ) ).

% max_number_of(1)
thf(fact_101_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_ma741700101516333627d_enat @ one_on7984719198319812577d_enat @ ( numera1916890842035813515d_enat @ X ) )
      = ( numera1916890842035813515d_enat @ X ) ) ).

% max_0_1(5)
thf(fact_102_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_real @ one_one_real @ ( numeral_numeral_real @ X ) )
      = ( numeral_numeral_real @ X ) ) ).

% max_0_1(5)
thf(fact_103_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_rat @ one_one_rat @ ( numeral_numeral_rat @ X ) )
      = ( numeral_numeral_rat @ X ) ) ).

% max_0_1(5)
thf(fact_104_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_nat @ one_one_nat @ ( numeral_numeral_nat @ X ) )
      = ( numeral_numeral_nat @ X ) ) ).

% max_0_1(5)
thf(fact_105_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_int @ one_one_int @ ( numeral_numeral_int @ X ) )
      = ( numeral_numeral_int @ X ) ) ).

% max_0_1(5)
thf(fact_106_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_ma741700101516333627d_enat @ ( numera1916890842035813515d_enat @ X ) @ one_on7984719198319812577d_enat )
      = ( numera1916890842035813515d_enat @ X ) ) ).

% max_0_1(6)
thf(fact_107_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_real @ ( numeral_numeral_real @ X ) @ one_one_real )
      = ( numeral_numeral_real @ X ) ) ).

% max_0_1(6)
thf(fact_108_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_rat @ ( numeral_numeral_rat @ X ) @ one_one_rat )
      = ( numeral_numeral_rat @ X ) ) ).

% max_0_1(6)
thf(fact_109_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat )
      = ( numeral_numeral_nat @ X ) ) ).

% max_0_1(6)
thf(fact_110_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_int @ ( numeral_numeral_int @ X ) @ one_one_int )
      = ( numeral_numeral_int @ X ) ) ).

% max_0_1(6)
thf(fact_111_add__numeral__left,axiom,
    ! [V: num,W: num,Z: complex] :
      ( ( plus_plus_complex @ ( numera6690914467698888265omplex @ V ) @ ( plus_plus_complex @ ( numera6690914467698888265omplex @ W ) @ Z ) )
      = ( plus_plus_complex @ ( numera6690914467698888265omplex @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_112_add__numeral__left,axiom,
    ! [V: num,W: num,Z: real] :
      ( ( plus_plus_real @ ( numeral_numeral_real @ V ) @ ( plus_plus_real @ ( numeral_numeral_real @ W ) @ Z ) )
      = ( plus_plus_real @ ( numeral_numeral_real @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_113_add__numeral__left,axiom,
    ! [V: num,W: num,Z: rat] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ ( plus_plus_rat @ ( numeral_numeral_rat @ W ) @ Z ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_114_add__numeral__left,axiom,
    ! [V: num,W: num,Z: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ ( numeral_numeral_nat @ W ) @ Z ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_115_add__numeral__left,axiom,
    ! [V: num,W: num,Z: int] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ ( numeral_numeral_int @ W ) @ Z ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_116_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_complex @ ( numera6690914467698888265omplex @ M ) @ ( numera6690914467698888265omplex @ N ) )
      = ( numera6690914467698888265omplex @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_117_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) )
      = ( numeral_numeral_real @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_118_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( numeral_numeral_rat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_119_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_120_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_121_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_122_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_123_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_124_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_125_mem__Collect__eq,axiom,
    ! [A: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
      ( ( member8440522571783428010at_nat @ A @ ( collec3392354462482085612at_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_126_mem__Collect__eq,axiom,
    ! [A: complex,P: complex > $o] :
      ( ( member_complex @ A @ ( collect_complex @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_127_mem__Collect__eq,axiom,
    ! [A: real,P: real > $o] :
      ( ( member_real @ A @ ( collect_real @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_128_mem__Collect__eq,axiom,
    ! [A: list_nat,P: list_nat > $o] :
      ( ( member_list_nat @ A @ ( collect_list_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_129_mem__Collect__eq,axiom,
    ! [A: nat,P: nat > $o] :
      ( ( member_nat @ A @ ( collect_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_130_mem__Collect__eq,axiom,
    ! [A: int,P: int > $o] :
      ( ( member_int @ A @ ( collect_int @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_131_Collect__mem__eq,axiom,
    ! [A2: set_Pr1261947904930325089at_nat] :
      ( ( collec3392354462482085612at_nat
        @ ^ [X4: product_prod_nat_nat] : ( member8440522571783428010at_nat @ X4 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_132_Collect__mem__eq,axiom,
    ! [A2: set_complex] :
      ( ( collect_complex
        @ ^ [X4: complex] : ( member_complex @ X4 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_133_Collect__mem__eq,axiom,
    ! [A2: set_real] :
      ( ( collect_real
        @ ^ [X4: real] : ( member_real @ X4 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_134_Collect__mem__eq,axiom,
    ! [A2: set_list_nat] :
      ( ( collect_list_nat
        @ ^ [X4: list_nat] : ( member_list_nat @ X4 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_135_Collect__mem__eq,axiom,
    ! [A2: set_nat] :
      ( ( collect_nat
        @ ^ [X4: nat] : ( member_nat @ X4 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_136_Collect__mem__eq,axiom,
    ! [A2: set_int] :
      ( ( collect_int
        @ ^ [X4: int] : ( member_int @ X4 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_137_Collect__cong,axiom,
    ! [P: complex > $o,Q: complex > $o] :
      ( ! [X5: complex] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_complex @ P )
        = ( collect_complex @ Q ) ) ) ).

% Collect_cong
thf(fact_138_Collect__cong,axiom,
    ! [P: real > $o,Q: real > $o] :
      ( ! [X5: real] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_real @ P )
        = ( collect_real @ Q ) ) ) ).

% Collect_cong
thf(fact_139_Collect__cong,axiom,
    ! [P: list_nat > $o,Q: list_nat > $o] :
      ( ! [X5: list_nat] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_list_nat @ P )
        = ( collect_list_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_140_Collect__cong,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ! [X5: nat] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_nat @ P )
        = ( collect_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_141_Collect__cong,axiom,
    ! [P: int > $o,Q: int > $o] :
      ( ! [X5: int] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_int @ P )
        = ( collect_int @ Q ) ) ) ).

% Collect_cong
thf(fact_142_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_143_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_144_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_145_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_146__C1_C,axiom,
    vEBT_invar_vebt @ summary @ m ).

% "1"
thf(fact_147__C4_OIH_C_I1_J,axiom,
    ! [X3: vEBT_VEBT] :
      ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ treeList ) )
     => ( ( vEBT_invar_vebt @ X3 @ na )
        & ! [Xa: nat] :
            ( ( ord_less_nat @ Xa @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ na ) )
           => ( vEBT_invar_vebt @ ( vEBT_vebt_insert @ X3 @ Xa ) @ na ) ) ) ) ).

% "4.IH"(1)
thf(fact_148_add__One__commute,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ N )
      = ( plus_plus_num @ N @ one ) ) ).

% add_One_commute
thf(fact_149_le__num__One__iff,axiom,
    ! [X: num] :
      ( ( ord_less_eq_num @ X @ one )
      = ( X = one ) ) ).

% le_num_One_iff
thf(fact_150_is__num__normalize_I1_J,axiom,
    ! [A: real,B: real,C: real] :
      ( ( plus_plus_real @ ( plus_plus_real @ A @ B ) @ C )
      = ( plus_plus_real @ A @ ( plus_plus_real @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_151_is__num__normalize_I1_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_152_is__num__normalize_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_153_le__numeral__extra_I4_J,axiom,
    ord_less_eq_real @ one_one_real @ one_one_real ).

% le_numeral_extra(4)
thf(fact_154_le__numeral__extra_I4_J,axiom,
    ord_less_eq_rat @ one_one_rat @ one_one_rat ).

% le_numeral_extra(4)
thf(fact_155_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_156_le__numeral__extra_I4_J,axiom,
    ord_less_eq_int @ one_one_int @ one_one_int ).

% le_numeral_extra(4)
thf(fact_157_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_real @ one_one_real @ one_one_real ) ).

% less_numeral_extra(4)
thf(fact_158_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_rat @ one_one_rat @ one_one_rat ) ).

% less_numeral_extra(4)
thf(fact_159_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_160_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ one_one_int ) ).

% less_numeral_extra(4)
thf(fact_161_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_real @ one_one_real @ ( numeral_numeral_real @ N ) ) ).

% one_le_numeral
thf(fact_162_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) ) ).

% one_le_numeral
thf(fact_163_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) ) ).

% one_le_numeral
thf(fact_164_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_int @ one_one_int @ ( numeral_numeral_int @ N ) ) ).

% one_le_numeral
thf(fact_165_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_real @ ( numeral_numeral_real @ N ) @ one_one_real ) ).

% not_numeral_less_one
thf(fact_166_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ N ) @ one_one_rat ) ).

% not_numeral_less_one
thf(fact_167_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat ) ).

% not_numeral_less_one
thf(fact_168_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ).

% not_numeral_less_one
thf(fact_169_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numera6690914467698888265omplex @ ( bit0 @ N ) )
      = ( plus_plus_complex @ ( numera6690914467698888265omplex @ N ) @ ( numera6690914467698888265omplex @ N ) ) ) ).

% numeral_Bit0
thf(fact_170_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_real @ ( bit0 @ N ) )
      = ( plus_plus_real @ ( numeral_numeral_real @ N ) @ ( numeral_numeral_real @ N ) ) ) ).

% numeral_Bit0
thf(fact_171_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ ( bit0 @ N ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ N ) @ ( numeral_numeral_rat @ N ) ) ) ).

% numeral_Bit0
thf(fact_172_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) ) ).

% numeral_Bit0
thf(fact_173_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit0 @ N ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_Bit0
thf(fact_174_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_complex @ one_one_complex @ ( numera6690914467698888265omplex @ X ) )
      = ( plus_plus_complex @ ( numera6690914467698888265omplex @ X ) @ one_one_complex ) ) ).

% one_plus_numeral_commute
thf(fact_175_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_real @ one_one_real @ ( numeral_numeral_real @ X ) )
      = ( plus_plus_real @ ( numeral_numeral_real @ X ) @ one_one_real ) ) ).

% one_plus_numeral_commute
thf(fact_176_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_rat @ one_one_rat @ ( numeral_numeral_rat @ X ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ X ) @ one_one_rat ) ) ).

% one_plus_numeral_commute
thf(fact_177_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ X ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat ) ) ).

% one_plus_numeral_commute
thf(fact_178_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ X ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ X ) @ one_one_int ) ) ).

% one_plus_numeral_commute
thf(fact_179_numeral__One,axiom,
    ( ( numera6690914467698888265omplex @ one )
    = one_one_complex ) ).

% numeral_One
thf(fact_180_numeral__One,axiom,
    ( ( numeral_numeral_real @ one )
    = one_one_real ) ).

% numeral_One
thf(fact_181_numeral__One,axiom,
    ( ( numeral_numeral_rat @ one )
    = one_one_rat ) ).

% numeral_One
thf(fact_182_numeral__One,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numeral_One
thf(fact_183_numeral__One,axiom,
    ( ( numeral_numeral_int @ one )
    = one_one_int ) ).

% numeral_One
thf(fact_184_one__le__power,axiom,
    ! [A: real,N: nat] :
      ( ( ord_less_eq_real @ one_one_real @ A )
     => ( ord_less_eq_real @ one_one_real @ ( power_power_real @ A @ N ) ) ) ).

% one_le_power
thf(fact_185_one__le__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ one_one_rat @ A )
     => ( ord_less_eq_rat @ one_one_rat @ ( power_power_rat @ A @ N ) ) ) ).

% one_le_power
thf(fact_186_one__le__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ A )
     => ( ord_less_eq_nat @ one_one_nat @ ( power_power_nat @ A @ N ) ) ) ).

% one_le_power
thf(fact_187_one__le__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ one_one_int @ A )
     => ( ord_less_eq_int @ one_one_int @ ( power_power_int @ A @ N ) ) ) ).

% one_le_power
thf(fact_188_numerals_I1_J,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numerals(1)
thf(fact_189_power__strict__increasing,axiom,
    ! [N: nat,N3: nat,A: real] :
      ( ( ord_less_nat @ N @ N3 )
     => ( ( ord_less_real @ one_one_real @ A )
       => ( ord_less_real @ ( power_power_real @ A @ N ) @ ( power_power_real @ A @ N3 ) ) ) ) ).

% power_strict_increasing
thf(fact_190_power__strict__increasing,axiom,
    ! [N: nat,N3: nat,A: rat] :
      ( ( ord_less_nat @ N @ N3 )
     => ( ( ord_less_rat @ one_one_rat @ A )
       => ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ A @ N3 ) ) ) ) ).

% power_strict_increasing
thf(fact_191_power__strict__increasing,axiom,
    ! [N: nat,N3: nat,A: nat] :
      ( ( ord_less_nat @ N @ N3 )
     => ( ( ord_less_nat @ one_one_nat @ A )
       => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ A @ N3 ) ) ) ) ).

% power_strict_increasing
thf(fact_192_power__strict__increasing,axiom,
    ! [N: nat,N3: nat,A: int] :
      ( ( ord_less_nat @ N @ N3 )
     => ( ( ord_less_int @ one_one_int @ A )
       => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ A @ N3 ) ) ) ) ).

% power_strict_increasing
thf(fact_193_power__less__imp__less__exp,axiom,
    ! [A: real,M: nat,N: nat] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ ( power_power_real @ A @ M ) @ ( power_power_real @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_194_power__less__imp__less__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_195_power__less__imp__less__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_196_power__less__imp__less__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_197_power__increasing,axiom,
    ! [N: nat,N3: nat,A: real] :
      ( ( ord_less_eq_nat @ N @ N3 )
     => ( ( ord_less_eq_real @ one_one_real @ A )
       => ( ord_less_eq_real @ ( power_power_real @ A @ N ) @ ( power_power_real @ A @ N3 ) ) ) ) ).

% power_increasing
thf(fact_198_power__increasing,axiom,
    ! [N: nat,N3: nat,A: rat] :
      ( ( ord_less_eq_nat @ N @ N3 )
     => ( ( ord_less_eq_rat @ one_one_rat @ A )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ A @ N3 ) ) ) ) ).

% power_increasing
thf(fact_199_power__increasing,axiom,
    ! [N: nat,N3: nat,A: nat] :
      ( ( ord_less_eq_nat @ N @ N3 )
     => ( ( ord_less_eq_nat @ one_one_nat @ A )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ A @ N3 ) ) ) ) ).

% power_increasing
thf(fact_200_power__increasing,axiom,
    ! [N: nat,N3: nat,A: int] :
      ( ( ord_less_eq_nat @ N @ N3 )
     => ( ( ord_less_eq_int @ one_one_int @ A )
       => ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ A @ N3 ) ) ) ) ).

% power_increasing
thf(fact_201_power__le__imp__le__exp,axiom,
    ! [A: real,M: nat,N: nat] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_eq_real @ ( power_power_real @ A @ M ) @ ( power_power_real @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_202_power__le__imp__le__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_eq_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_203_power__le__imp__le__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_eq_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_204_power__le__imp__le__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_eq_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_205_one__power2,axiom,
    ( ( power_power_rat @ one_one_rat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_rat ) ).

% one_power2
thf(fact_206_one__power2,axiom,
    ( ( power_power_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_nat ) ).

% one_power2
thf(fact_207_one__power2,axiom,
    ( ( power_power_real @ one_one_real @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_real ) ).

% one_power2
thf(fact_208_one__power2,axiom,
    ( ( power_power_int @ one_one_int @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_int ) ).

% one_power2
thf(fact_209_one__power2,axiom,
    ( ( power_power_complex @ one_one_complex @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_complex ) ).

% one_power2
thf(fact_210_less__exp,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% less_exp
thf(fact_211_nat__1__add__1,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% nat_1_add_1
thf(fact_212_power2__nat__le__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% power2_nat_le_imp_le
thf(fact_213_power2__nat__le__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% power2_nat_le_eq_le
thf(fact_214_self__le__ge2__pow,axiom,
    ! [K: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ord_less_eq_nat @ M @ ( power_power_nat @ K @ M ) ) ) ).

% self_le_ge2_pow
thf(fact_215_ex__power__ivl2,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
       => ? [N4: nat] :
            ( ( ord_less_nat @ ( power_power_nat @ B @ N4 ) @ K )
            & ( ord_less_eq_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N4 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl2
thf(fact_216_ex__power__ivl1,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ one_one_nat @ K )
       => ? [N4: nat] :
            ( ( ord_less_eq_nat @ ( power_power_nat @ B @ N4 ) @ K )
            & ( ord_less_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N4 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl1
thf(fact_217__C11_C,axiom,
    ! [X3: vEBT_VEBT] :
      ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ ( append_VEBT_VEBT @ ( take_VEBT_VEBT @ ( vEBT_VEBT_high @ xa @ na ) @ treeList ) @ ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) @ ( vEBT_VEBT_low @ xa @ na ) ) @ nil_VEBT_VEBT ) @ ( drop_VEBT_VEBT @ ( plus_plus_nat @ ( vEBT_VEBT_high @ xa @ na ) @ one_one_nat ) @ treeList ) ) ) ) )
     => ( vEBT_invar_vebt @ X3 @ na ) ) ).

% "11"
thf(fact_218_nth__drop,axiom,
    ! [N: nat,Xs: list_VEBT_VEBT,I2: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_s6755466524823107622T_VEBT @ Xs ) )
     => ( ( nth_VEBT_VEBT @ ( drop_VEBT_VEBT @ N @ Xs ) @ I2 )
        = ( nth_VEBT_VEBT @ Xs @ ( plus_plus_nat @ N @ I2 ) ) ) ) ).

% nth_drop
thf(fact_219_nth__drop,axiom,
    ! [N: nat,Xs: list_o,I2: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_size_list_o @ Xs ) )
     => ( ( nth_o @ ( drop_o @ N @ Xs ) @ I2 )
        = ( nth_o @ Xs @ ( plus_plus_nat @ N @ I2 ) ) ) ) ).

% nth_drop
thf(fact_220_nth__drop,axiom,
    ! [N: nat,Xs: list_nat,I2: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( drop_nat @ N @ Xs ) @ I2 )
        = ( nth_nat @ Xs @ ( plus_plus_nat @ N @ I2 ) ) ) ) ).

% nth_drop
thf(fact_221_nth__drop,axiom,
    ! [N: nat,Xs: list_int,I2: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_size_list_int @ Xs ) )
     => ( ( nth_int @ ( drop_int @ N @ Xs ) @ I2 )
        = ( nth_int @ Xs @ ( plus_plus_nat @ N @ I2 ) ) ) ) ).

% nth_drop
thf(fact_222_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_VEBT_VEBT] :
      ( ( nil_VEBT_VEBT
        = ( drop_VEBT_VEBT @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s6755466524823107622T_VEBT @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_223_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( nil_o
        = ( drop_o @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_224_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( nil_nat
        = ( drop_nat @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_225_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_int] :
      ( ( nil_int
        = ( drop_int @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_226_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_VEBT_VEBT] :
      ( ( ( drop_VEBT_VEBT @ N @ Xs )
        = nil_VEBT_VEBT )
      = ( ord_less_eq_nat @ ( size_s6755466524823107622T_VEBT @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_227_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( ( drop_o @ N @ Xs )
        = nil_o )
      = ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_228_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( drop_nat @ N @ Xs )
        = nil_nat )
      = ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_229_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_int] :
      ( ( ( drop_int @ N @ Xs )
        = nil_int )
      = ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_230_drop__all,axiom,
    ! [Xs: list_VEBT_VEBT,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s6755466524823107622T_VEBT @ Xs ) @ N )
     => ( ( drop_VEBT_VEBT @ N @ Xs )
        = nil_VEBT_VEBT ) ) ).

% drop_all
thf(fact_231_drop__all,axiom,
    ! [Xs: list_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N )
     => ( ( drop_o @ N @ Xs )
        = nil_o ) ) ).

% drop_all
thf(fact_232_drop__all,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N )
     => ( ( drop_nat @ N @ Xs )
        = nil_nat ) ) ).

% drop_all
thf(fact_233_drop__all,axiom,
    ! [Xs: list_int,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ N )
     => ( ( drop_int @ N @ Xs )
        = nil_int ) ) ).

% drop_all
thf(fact_234_nth__append__length__plus,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,N: nat] :
      ( ( nth_VEBT_VEBT @ ( append_VEBT_VEBT @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_s6755466524823107622T_VEBT @ Xs ) @ N ) )
      = ( nth_VEBT_VEBT @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_235_nth__append__length__plus,axiom,
    ! [Xs: list_o,Ys: list_o,N: nat] :
      ( ( nth_o @ ( append_o @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_size_list_o @ Xs ) @ N ) )
      = ( nth_o @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_236_nth__append__length__plus,axiom,
    ! [Xs: list_nat,Ys: list_nat,N: nat] :
      ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ N ) )
      = ( nth_nat @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_237_nth__append__length__plus,axiom,
    ! [Xs: list_int,Ys: list_int,N: nat] :
      ( ( nth_int @ ( append_int @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_size_list_int @ Xs ) @ N ) )
      = ( nth_int @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_238_nth__append__length,axiom,
    ! [Xs: list_VEBT_VEBT,X: vEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( nth_VEBT_VEBT @ ( append_VEBT_VEBT @ Xs @ ( cons_VEBT_VEBT @ X @ Ys ) ) @ ( size_s6755466524823107622T_VEBT @ Xs ) )
      = X ) ).

% nth_append_length
thf(fact_239_nth__append__length,axiom,
    ! [Xs: list_o,X: $o,Ys: list_o] :
      ( ( nth_o @ ( append_o @ Xs @ ( cons_o @ X @ Ys ) ) @ ( size_size_list_o @ Xs ) )
      = X ) ).

% nth_append_length
thf(fact_240_nth__append__length,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat] :
      ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs ) )
      = X ) ).

% nth_append_length
thf(fact_241_nth__append__length,axiom,
    ! [Xs: list_int,X: int,Ys: list_int] :
      ( ( nth_int @ ( append_int @ Xs @ ( cons_int @ X @ Ys ) ) @ ( size_size_list_int @ Xs ) )
      = X ) ).

% nth_append_length
thf(fact_242_append__take__drop__id,axiom,
    ! [N: nat,Xs: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ ( take_VEBT_VEBT @ N @ Xs ) @ ( drop_VEBT_VEBT @ N @ Xs ) )
      = Xs ) ).

% append_take_drop_id
thf(fact_243_append__take__drop__id,axiom,
    ! [N: nat,Xs: list_int] :
      ( ( append_int @ ( take_int @ N @ Xs ) @ ( drop_int @ N @ Xs ) )
      = Xs ) ).

% append_take_drop_id
thf(fact_244_append__take__drop__id,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( append_nat @ ( take_nat @ N @ Xs ) @ ( drop_nat @ N @ Xs ) )
      = Xs ) ).

% append_take_drop_id
thf(fact_245_semiring__norm_I76_J,axiom,
    ! [N: num] : ( ord_less_num @ one @ ( bit0 @ N ) ) ).

% semiring_norm(76)
thf(fact_246_semiring__norm_I69_J,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_num @ ( bit0 @ M ) @ one ) ).

% semiring_norm(69)
thf(fact_247__C12_C,axiom,
    vEBT_invar_vebt @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) ) @ ( vEBT_vebt_insert @ summary @ ( vEBT_VEBT_high @ xa @ na ) ) @ summary ) @ na ).

% "12"
thf(fact_248_nth__take,axiom,
    ! [I2: nat,N: nat,Xs: list_int] :
      ( ( ord_less_nat @ I2 @ N )
     => ( ( nth_int @ ( take_int @ N @ Xs ) @ I2 )
        = ( nth_int @ Xs @ I2 ) ) ) ).

% nth_take
thf(fact_249_nth__take,axiom,
    ! [I2: nat,N: nat,Xs: list_VEBT_VEBT] :
      ( ( ord_less_nat @ I2 @ N )
     => ( ( nth_VEBT_VEBT @ ( take_VEBT_VEBT @ N @ Xs ) @ I2 )
        = ( nth_VEBT_VEBT @ Xs @ I2 ) ) ) ).

% nth_take
thf(fact_250_nth__take,axiom,
    ! [I2: nat,N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I2 @ N )
     => ( ( nth_nat @ ( take_nat @ N @ Xs ) @ I2 )
        = ( nth_nat @ Xs @ I2 ) ) ) ).

% nth_take
thf(fact_251_semiring__norm_I87_J,axiom,
    ! [M: num,N: num] :
      ( ( ( bit0 @ M )
        = ( bit0 @ N ) )
      = ( M = N ) ) ).

% semiring_norm(87)
thf(fact_252_list_Oinject,axiom,
    ! [X21: vEBT_VEBT,X22: list_VEBT_VEBT,Y21: vEBT_VEBT,Y22: list_VEBT_VEBT] :
      ( ( ( cons_VEBT_VEBT @ X21 @ X22 )
        = ( cons_VEBT_VEBT @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_253_list_Oinject,axiom,
    ! [X21: int,X22: list_int,Y21: int,Y22: list_int] :
      ( ( ( cons_int @ X21 @ X22 )
        = ( cons_int @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_254_list_Oinject,axiom,
    ! [X21: nat,X22: list_nat,Y21: nat,Y22: list_nat] :
      ( ( ( cons_nat @ X21 @ X22 )
        = ( cons_nat @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_255_append_Oassoc,axiom,
    ! [A: list_VEBT_VEBT,B: list_VEBT_VEBT,C: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ ( append_VEBT_VEBT @ A @ B ) @ C )
      = ( append_VEBT_VEBT @ A @ ( append_VEBT_VEBT @ B @ C ) ) ) ).

% append.assoc
thf(fact_256_append_Oassoc,axiom,
    ! [A: list_int,B: list_int,C: list_int] :
      ( ( append_int @ ( append_int @ A @ B ) @ C )
      = ( append_int @ A @ ( append_int @ B @ C ) ) ) ).

% append.assoc
thf(fact_257_append_Oassoc,axiom,
    ! [A: list_nat,B: list_nat,C: list_nat] :
      ( ( append_nat @ ( append_nat @ A @ B ) @ C )
      = ( append_nat @ A @ ( append_nat @ B @ C ) ) ) ).

% append.assoc
thf(fact_258_append__assoc,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Zs: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ ( append_VEBT_VEBT @ Xs @ Ys ) @ Zs )
      = ( append_VEBT_VEBT @ Xs @ ( append_VEBT_VEBT @ Ys @ Zs ) ) ) ).

% append_assoc
thf(fact_259_append__assoc,axiom,
    ! [Xs: list_int,Ys: list_int,Zs: list_int] :
      ( ( append_int @ ( append_int @ Xs @ Ys ) @ Zs )
      = ( append_int @ Xs @ ( append_int @ Ys @ Zs ) ) ) ).

% append_assoc
thf(fact_260_append__assoc,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ( append_nat @ ( append_nat @ Xs @ Ys ) @ Zs )
      = ( append_nat @ Xs @ ( append_nat @ Ys @ Zs ) ) ) ).

% append_assoc
thf(fact_261_append__same__eq,axiom,
    ! [Ys: list_VEBT_VEBT,Xs: list_VEBT_VEBT,Zs: list_VEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Ys @ Xs )
        = ( append_VEBT_VEBT @ Zs @ Xs ) )
      = ( Ys = Zs ) ) ).

% append_same_eq
thf(fact_262_append__same__eq,axiom,
    ! [Ys: list_int,Xs: list_int,Zs: list_int] :
      ( ( ( append_int @ Ys @ Xs )
        = ( append_int @ Zs @ Xs ) )
      = ( Ys = Zs ) ) ).

% append_same_eq
thf(fact_263_append__same__eq,axiom,
    ! [Ys: list_nat,Xs: list_nat,Zs: list_nat] :
      ( ( ( append_nat @ Ys @ Xs )
        = ( append_nat @ Zs @ Xs ) )
      = ( Ys = Zs ) ) ).

% append_same_eq
thf(fact_264_same__append__eq,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Zs: list_VEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Xs @ Ys )
        = ( append_VEBT_VEBT @ Xs @ Zs ) )
      = ( Ys = Zs ) ) ).

% same_append_eq
thf(fact_265_same__append__eq,axiom,
    ! [Xs: list_int,Ys: list_int,Zs: list_int] :
      ( ( ( append_int @ Xs @ Ys )
        = ( append_int @ Xs @ Zs ) )
      = ( Ys = Zs ) ) ).

% same_append_eq
thf(fact_266_same__append__eq,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Xs @ Zs ) )
      = ( Ys = Zs ) ) ).

% same_append_eq
thf(fact_267__C0_C,axiom,
    ! [X3: vEBT_VEBT] :
      ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ treeList ) )
     => ( vEBT_invar_vebt @ X3 @ na ) ) ).

% "0"
thf(fact_268_semiring__norm_I85_J,axiom,
    ! [M: num] :
      ( ( bit0 @ M )
     != one ) ).

% semiring_norm(85)
thf(fact_269_semiring__norm_I83_J,axiom,
    ! [N: num] :
      ( one
     != ( bit0 @ N ) ) ).

% semiring_norm(83)
thf(fact_270_valid__insert__both__member__options__add,axiom,
    ! [T: vEBT_VEBT,N: nat,X: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
       => ( vEBT_V8194947554948674370ptions @ ( vEBT_vebt_insert @ T @ X ) @ X ) ) ) ).

% valid_insert_both_member_options_add
thf(fact_271_valid__insert__both__member__options__pres,axiom,
    ! [T: vEBT_VEBT,N: nat,X: nat,Y2: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
       => ( ( ord_less_nat @ Y2 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
         => ( ( vEBT_V8194947554948674370ptions @ T @ X )
           => ( vEBT_V8194947554948674370ptions @ ( vEBT_vebt_insert @ T @ Y2 ) @ X ) ) ) ) ) ).

% valid_insert_both_member_options_pres
thf(fact_272_append_Oright__neutral,axiom,
    ! [A: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ A @ nil_VEBT_VEBT )
      = A ) ).

% append.right_neutral
thf(fact_273_append_Oright__neutral,axiom,
    ! [A: list_int] :
      ( ( append_int @ A @ nil_int )
      = A ) ).

% append.right_neutral
thf(fact_274_append_Oright__neutral,axiom,
    ! [A: list_nat] :
      ( ( append_nat @ A @ nil_nat )
      = A ) ).

% append.right_neutral
thf(fact_275_append__Nil2,axiom,
    ! [Xs: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ Xs @ nil_VEBT_VEBT )
      = Xs ) ).

% append_Nil2
thf(fact_276_append__Nil2,axiom,
    ! [Xs: list_int] :
      ( ( append_int @ Xs @ nil_int )
      = Xs ) ).

% append_Nil2
thf(fact_277_append__Nil2,axiom,
    ! [Xs: list_nat] :
      ( ( append_nat @ Xs @ nil_nat )
      = Xs ) ).

% append_Nil2
thf(fact_278_append__self__conv,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_VEBT_VEBT ) ) ).

% append_self_conv
thf(fact_279_append__self__conv,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( ( append_int @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_int ) ) ).

% append_self_conv
thf(fact_280_append__self__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_nat ) ) ).

% append_self_conv
thf(fact_281_self__append__conv,axiom,
    ! [Y2: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( Y2
        = ( append_VEBT_VEBT @ Y2 @ Ys ) )
      = ( Ys = nil_VEBT_VEBT ) ) ).

% self_append_conv
thf(fact_282_self__append__conv,axiom,
    ! [Y2: list_int,Ys: list_int] :
      ( ( Y2
        = ( append_int @ Y2 @ Ys ) )
      = ( Ys = nil_int ) ) ).

% self_append_conv
thf(fact_283_self__append__conv,axiom,
    ! [Y2: list_nat,Ys: list_nat] :
      ( ( Y2
        = ( append_nat @ Y2 @ Ys ) )
      = ( Ys = nil_nat ) ) ).

% self_append_conv
thf(fact_284_append__self__conv2,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_VEBT_VEBT ) ) ).

% append_self_conv2
thf(fact_285_append__self__conv2,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( ( append_int @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_int ) ) ).

% append_self_conv2
thf(fact_286_append__self__conv2,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_nat ) ) ).

% append_self_conv2
thf(fact_287_self__append__conv2,axiom,
    ! [Y2: list_VEBT_VEBT,Xs: list_VEBT_VEBT] :
      ( ( Y2
        = ( append_VEBT_VEBT @ Xs @ Y2 ) )
      = ( Xs = nil_VEBT_VEBT ) ) ).

% self_append_conv2
thf(fact_288_self__append__conv2,axiom,
    ! [Y2: list_int,Xs: list_int] :
      ( ( Y2
        = ( append_int @ Xs @ Y2 ) )
      = ( Xs = nil_int ) ) ).

% self_append_conv2
thf(fact_289_self__append__conv2,axiom,
    ! [Y2: list_nat,Xs: list_nat] :
      ( ( Y2
        = ( append_nat @ Xs @ Y2 ) )
      = ( Xs = nil_nat ) ) ).

% self_append_conv2
thf(fact_290_Nil__is__append__conv,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( nil_VEBT_VEBT
        = ( append_VEBT_VEBT @ Xs @ Ys ) )
      = ( ( Xs = nil_VEBT_VEBT )
        & ( Ys = nil_VEBT_VEBT ) ) ) ).

% Nil_is_append_conv
thf(fact_291_Nil__is__append__conv,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( nil_int
        = ( append_int @ Xs @ Ys ) )
      = ( ( Xs = nil_int )
        & ( Ys = nil_int ) ) ) ).

% Nil_is_append_conv
thf(fact_292_Nil__is__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( nil_nat
        = ( append_nat @ Xs @ Ys ) )
      = ( ( Xs = nil_nat )
        & ( Ys = nil_nat ) ) ) ).

% Nil_is_append_conv
thf(fact_293_append__is__Nil__conv,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Xs @ Ys )
        = nil_VEBT_VEBT )
      = ( ( Xs = nil_VEBT_VEBT )
        & ( Ys = nil_VEBT_VEBT ) ) ) ).

% append_is_Nil_conv
thf(fact_294_append__is__Nil__conv,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( ( append_int @ Xs @ Ys )
        = nil_int )
      = ( ( Xs = nil_int )
        & ( Ys = nil_int ) ) ) ).

% append_is_Nil_conv
thf(fact_295_append__is__Nil__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = nil_nat )
      = ( ( Xs = nil_nat )
        & ( Ys = nil_nat ) ) ) ).

% append_is_Nil_conv
thf(fact_296_append__eq__append__conv,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Us: list_VEBT_VEBT,Vs: list_VEBT_VEBT] :
      ( ( ( ( size_s6755466524823107622T_VEBT @ Xs )
          = ( size_s6755466524823107622T_VEBT @ Ys ) )
        | ( ( size_s6755466524823107622T_VEBT @ Us )
          = ( size_s6755466524823107622T_VEBT @ Vs ) ) )
     => ( ( ( append_VEBT_VEBT @ Xs @ Us )
          = ( append_VEBT_VEBT @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_297_append__eq__append__conv,axiom,
    ! [Xs: list_o,Ys: list_o,Us: list_o,Vs: list_o] :
      ( ( ( ( size_size_list_o @ Xs )
          = ( size_size_list_o @ Ys ) )
        | ( ( size_size_list_o @ Us )
          = ( size_size_list_o @ Vs ) ) )
     => ( ( ( append_o @ Xs @ Us )
          = ( append_o @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_298_append__eq__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat,Us: list_nat,Vs: list_nat] :
      ( ( ( ( size_size_list_nat @ Xs )
          = ( size_size_list_nat @ Ys ) )
        | ( ( size_size_list_nat @ Us )
          = ( size_size_list_nat @ Vs ) ) )
     => ( ( ( append_nat @ Xs @ Us )
          = ( append_nat @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_299_append__eq__append__conv,axiom,
    ! [Xs: list_int,Ys: list_int,Us: list_int,Vs: list_int] :
      ( ( ( ( size_size_list_int @ Xs )
          = ( size_size_list_int @ Ys ) )
        | ( ( size_size_list_int @ Us )
          = ( size_size_list_int @ Vs ) ) )
     => ( ( ( append_int @ Xs @ Us )
          = ( append_int @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_300_semiring__norm_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( bit0 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(6)
thf(fact_301_drop__drop,axiom,
    ! [N: nat,M: nat,Xs: list_VEBT_VEBT] :
      ( ( drop_VEBT_VEBT @ N @ ( drop_VEBT_VEBT @ M @ Xs ) )
      = ( drop_VEBT_VEBT @ ( plus_plus_nat @ N @ M ) @ Xs ) ) ).

% drop_drop
thf(fact_302_drop__drop,axiom,
    ! [N: nat,M: nat,Xs: list_nat] :
      ( ( drop_nat @ N @ ( drop_nat @ M @ Xs ) )
      = ( drop_nat @ ( plus_plus_nat @ N @ M ) @ Xs ) ) ).

% drop_drop
thf(fact_303_semiring__norm_I71_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(71)
thf(fact_304_semiring__norm_I78_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(78)
thf(fact_305_semiring__norm_I68_J,axiom,
    ! [N: num] : ( ord_less_eq_num @ one @ N ) ).

% semiring_norm(68)
thf(fact_306_semiring__norm_I75_J,axiom,
    ! [M: num] :
      ~ ( ord_less_num @ M @ one ) ).

% semiring_norm(75)
thf(fact_307_set__n__deg__not__0,axiom,
    ! [TreeList2: list_VEBT_VEBT,N: nat,M: nat] :
      ( ! [X5: vEBT_VEBT] :
          ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
         => ( vEBT_invar_vebt @ X5 @ N ) )
     => ( ( ( size_s6755466524823107622T_VEBT @ TreeList2 )
          = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
       => ( ord_less_eq_nat @ one_one_nat @ N ) ) ) ).

% set_n_deg_not_0
thf(fact_308__C4_OIH_C_I2_J,axiom,
    ! [X: nat] :
      ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ m ) )
     => ( vEBT_invar_vebt @ ( vEBT_vebt_insert @ summary @ X ) @ m ) ) ).

% "4.IH"(2)
thf(fact_309_myIHs,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( member_VEBT_VEBT @ X @ ( set_VEBT_VEBT2 @ treeList ) )
     => ( ( vEBT_invar_vebt @ X @ na )
       => ( ( ord_less_nat @ Xa2 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ na ) )
         => ( vEBT_invar_vebt @ ( vEBT_vebt_insert @ X @ Xa2 ) @ na ) ) ) ) ).

% myIHs
thf(fact_310_append1__eq__conv,axiom,
    ! [Xs: list_VEBT_VEBT,X: vEBT_VEBT,Ys: list_VEBT_VEBT,Y2: vEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Xs @ ( cons_VEBT_VEBT @ X @ nil_VEBT_VEBT ) )
        = ( append_VEBT_VEBT @ Ys @ ( cons_VEBT_VEBT @ Y2 @ nil_VEBT_VEBT ) ) )
      = ( ( Xs = Ys )
        & ( X = Y2 ) ) ) ).

% append1_eq_conv
thf(fact_311_append1__eq__conv,axiom,
    ! [Xs: list_int,X: int,Ys: list_int,Y2: int] :
      ( ( ( append_int @ Xs @ ( cons_int @ X @ nil_int ) )
        = ( append_int @ Ys @ ( cons_int @ Y2 @ nil_int ) ) )
      = ( ( Xs = Ys )
        & ( X = Y2 ) ) ) ).

% append1_eq_conv
thf(fact_312_append1__eq__conv,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat,Y2: nat] :
      ( ( ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) )
        = ( append_nat @ Ys @ ( cons_nat @ Y2 @ nil_nat ) ) )
      = ( ( Xs = Ys )
        & ( X = Y2 ) ) ) ).

% append1_eq_conv
thf(fact_313_length__append,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( size_s6755466524823107622T_VEBT @ ( append_VEBT_VEBT @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_s6755466524823107622T_VEBT @ Xs ) @ ( size_s6755466524823107622T_VEBT @ Ys ) ) ) ).

% length_append
thf(fact_314_length__append,axiom,
    ! [Xs: list_o,Ys: list_o] :
      ( ( size_size_list_o @ ( append_o @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_size_list_o @ Xs ) @ ( size_size_list_o @ Ys ) ) ) ).

% length_append
thf(fact_315_length__append,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( size_size_list_nat @ ( append_nat @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ ( size_size_list_nat @ Ys ) ) ) ).

% length_append
thf(fact_316_length__append,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( size_size_list_int @ ( append_int @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_size_list_int @ Xs ) @ ( size_size_list_int @ Ys ) ) ) ).

% length_append
thf(fact_317_semiring__norm_I2_J,axiom,
    ( ( plus_plus_num @ one @ one )
    = ( bit0 @ one ) ) ).

% semiring_norm(2)
thf(fact_318_take__all,axiom,
    ! [Xs: list_VEBT_VEBT,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s6755466524823107622T_VEBT @ Xs ) @ N )
     => ( ( take_VEBT_VEBT @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_319_take__all,axiom,
    ! [Xs: list_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N )
     => ( ( take_o @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_320_take__all,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N )
     => ( ( take_nat @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_321_take__all,axiom,
    ! [Xs: list_int,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ N )
     => ( ( take_int @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_322_take__all__iff,axiom,
    ! [N: nat,Xs: list_VEBT_VEBT] :
      ( ( ( take_VEBT_VEBT @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_s6755466524823107622T_VEBT @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_323_take__all__iff,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( ( take_o @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_324_take__all__iff,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( take_nat @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_325_take__all__iff,axiom,
    ! [N: nat,Xs: list_int] :
      ( ( ( take_int @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_326_not__Cons__self2,axiom,
    ! [X: vEBT_VEBT,Xs: list_VEBT_VEBT] :
      ( ( cons_VEBT_VEBT @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_327_not__Cons__self2,axiom,
    ! [X: int,Xs: list_int] :
      ( ( cons_int @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_328_not__Cons__self2,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( cons_nat @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_329_subset__code_I1_J,axiom,
    ! [Xs: list_P6011104703257516679at_nat,B2: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ B2 )
      = ( ! [X4: product_prod_nat_nat] :
            ( ( member8440522571783428010at_nat @ X4 @ ( set_Pr5648618587558075414at_nat @ Xs ) )
           => ( member8440522571783428010at_nat @ X4 @ B2 ) ) ) ) ).

% subset_code(1)
thf(fact_330_subset__code_I1_J,axiom,
    ! [Xs: list_complex,B2: set_complex] :
      ( ( ord_le211207098394363844omplex @ ( set_complex2 @ Xs ) @ B2 )
      = ( ! [X4: complex] :
            ( ( member_complex @ X4 @ ( set_complex2 @ Xs ) )
           => ( member_complex @ X4 @ B2 ) ) ) ) ).

% subset_code(1)
thf(fact_331_subset__code_I1_J,axiom,
    ! [Xs: list_real,B2: set_real] :
      ( ( ord_less_eq_set_real @ ( set_real2 @ Xs ) @ B2 )
      = ( ! [X4: real] :
            ( ( member_real @ X4 @ ( set_real2 @ Xs ) )
           => ( member_real @ X4 @ B2 ) ) ) ) ).

% subset_code(1)
thf(fact_332_subset__code_I1_J,axiom,
    ! [Xs: list_VEBT_VEBT,B2: set_VEBT_VEBT] :
      ( ( ord_le4337996190870823476T_VEBT @ ( set_VEBT_VEBT2 @ Xs ) @ B2 )
      = ( ! [X4: vEBT_VEBT] :
            ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ Xs ) )
           => ( member_VEBT_VEBT @ X4 @ B2 ) ) ) ) ).

% subset_code(1)
thf(fact_333_subset__code_I1_J,axiom,
    ! [Xs: list_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ B2 )
      = ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
           => ( member_nat @ X4 @ B2 ) ) ) ) ).

% subset_code(1)
thf(fact_334_subset__code_I1_J,axiom,
    ! [Xs: list_int,B2: set_int] :
      ( ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ B2 )
      = ( ! [X4: int] :
            ( ( member_int @ X4 @ ( set_int2 @ Xs ) )
           => ( member_int @ X4 @ B2 ) ) ) ) ).

% subset_code(1)
thf(fact_335_neq__if__length__neq,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
       != ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_336_neq__if__length__neq,axiom,
    ! [Xs: list_o,Ys: list_o] :
      ( ( ( size_size_list_o @ Xs )
       != ( size_size_list_o @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_337_neq__if__length__neq,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
       != ( size_size_list_nat @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_338_neq__if__length__neq,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( ( size_size_list_int @ Xs )
       != ( size_size_list_int @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_339_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_VEBT_VEBT] :
      ( ( size_s6755466524823107622T_VEBT @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_340_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_o] :
      ( ( size_size_list_o @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_341_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_nat] :
      ( ( size_size_list_nat @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_342_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_int] :
      ( ( size_size_list_int @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_343_append__eq__appendI,axiom,
    ! [Xs: list_VEBT_VEBT,Xs1: list_VEBT_VEBT,Zs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Us: list_VEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Xs @ Xs1 )
        = Zs )
     => ( ( Ys
          = ( append_VEBT_VEBT @ Xs1 @ Us ) )
       => ( ( append_VEBT_VEBT @ Xs @ Ys )
          = ( append_VEBT_VEBT @ Zs @ Us ) ) ) ) ).

% append_eq_appendI
thf(fact_344_append__eq__appendI,axiom,
    ! [Xs: list_int,Xs1: list_int,Zs: list_int,Ys: list_int,Us: list_int] :
      ( ( ( append_int @ Xs @ Xs1 )
        = Zs )
     => ( ( Ys
          = ( append_int @ Xs1 @ Us ) )
       => ( ( append_int @ Xs @ Ys )
          = ( append_int @ Zs @ Us ) ) ) ) ).

% append_eq_appendI
thf(fact_345_append__eq__appendI,axiom,
    ! [Xs: list_nat,Xs1: list_nat,Zs: list_nat,Ys: list_nat,Us: list_nat] :
      ( ( ( append_nat @ Xs @ Xs1 )
        = Zs )
     => ( ( Ys
          = ( append_nat @ Xs1 @ Us ) )
       => ( ( append_nat @ Xs @ Ys )
          = ( append_nat @ Zs @ Us ) ) ) ) ).

% append_eq_appendI
thf(fact_346_append__eq__append__conv2,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Zs: list_VEBT_VEBT,Ts: list_VEBT_VEBT] :
      ( ( ( append_VEBT_VEBT @ Xs @ Ys )
        = ( append_VEBT_VEBT @ Zs @ Ts ) )
      = ( ? [Us2: list_VEBT_VEBT] :
            ( ( ( Xs
                = ( append_VEBT_VEBT @ Zs @ Us2 ) )
              & ( ( append_VEBT_VEBT @ Us2 @ Ys )
                = Ts ) )
            | ( ( ( append_VEBT_VEBT @ Xs @ Us2 )
                = Zs )
              & ( Ys
                = ( append_VEBT_VEBT @ Us2 @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_347_append__eq__append__conv2,axiom,
    ! [Xs: list_int,Ys: list_int,Zs: list_int,Ts: list_int] :
      ( ( ( append_int @ Xs @ Ys )
        = ( append_int @ Zs @ Ts ) )
      = ( ? [Us2: list_int] :
            ( ( ( Xs
                = ( append_int @ Zs @ Us2 ) )
              & ( ( append_int @ Us2 @ Ys )
                = Ts ) )
            | ( ( ( append_int @ Xs @ Us2 )
                = Zs )
              & ( Ys
                = ( append_int @ Us2 @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_348_append__eq__append__conv2,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ts: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Zs @ Ts ) )
      = ( ? [Us2: list_nat] :
            ( ( ( Xs
                = ( append_nat @ Zs @ Us2 ) )
              & ( ( append_nat @ Us2 @ Ys )
                = Ts ) )
            | ( ( ( append_nat @ Xs @ Us2 )
                = Zs )
              & ( Ys
                = ( append_nat @ Us2 @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_349_take__equalityI,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ! [I3: nat] :
          ( ( take_VEBT_VEBT @ I3 @ Xs )
          = ( take_VEBT_VEBT @ I3 @ Ys ) )
     => ( Xs = Ys ) ) ).

% take_equalityI
thf(fact_350_take__equalityI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ! [I3: nat] :
          ( ( take_nat @ I3 @ Xs )
          = ( take_nat @ I3 @ Ys ) )
     => ( Xs = Ys ) ) ).

% take_equalityI
thf(fact_351_list_Odistinct_I1_J,axiom,
    ! [X21: vEBT_VEBT,X22: list_VEBT_VEBT] :
      ( nil_VEBT_VEBT
     != ( cons_VEBT_VEBT @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_352_list_Odistinct_I1_J,axiom,
    ! [X21: int,X22: list_int] :
      ( nil_int
     != ( cons_int @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_353_list_Odistinct_I1_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( nil_nat
     != ( cons_nat @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_354_list_OdiscI,axiom,
    ! [List: list_VEBT_VEBT,X21: vEBT_VEBT,X22: list_VEBT_VEBT] :
      ( ( List
        = ( cons_VEBT_VEBT @ X21 @ X22 ) )
     => ( List != nil_VEBT_VEBT ) ) ).

% list.discI
thf(fact_355_list_OdiscI,axiom,
    ! [List: list_int,X21: int,X22: list_int] :
      ( ( List
        = ( cons_int @ X21 @ X22 ) )
     => ( List != nil_int ) ) ).

% list.discI
thf(fact_356_list_OdiscI,axiom,
    ! [List: list_nat,X21: nat,X22: list_nat] :
      ( ( List
        = ( cons_nat @ X21 @ X22 ) )
     => ( List != nil_nat ) ) ).

% list.discI
thf(fact_357_list_Oexhaust,axiom,
    ! [Y2: list_VEBT_VEBT] :
      ( ( Y2 != nil_VEBT_VEBT )
     => ~ ! [X212: vEBT_VEBT,X222: list_VEBT_VEBT] :
            ( Y2
           != ( cons_VEBT_VEBT @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_358_list_Oexhaust,axiom,
    ! [Y2: list_int] :
      ( ( Y2 != nil_int )
     => ~ ! [X212: int,X222: list_int] :
            ( Y2
           != ( cons_int @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_359_list_Oexhaust,axiom,
    ! [Y2: list_nat] :
      ( ( Y2 != nil_nat )
     => ~ ! [X212: nat,X222: list_nat] :
            ( Y2
           != ( cons_nat @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_360_min__list_Ocases,axiom,
    ! [X: list_int] :
      ( ! [X5: int,Xs2: list_int] :
          ( X
         != ( cons_int @ X5 @ Xs2 ) )
     => ( X = nil_int ) ) ).

% min_list.cases
thf(fact_361_min__list_Ocases,axiom,
    ! [X: list_nat] :
      ( ! [X5: nat,Xs2: list_nat] :
          ( X
         != ( cons_nat @ X5 @ Xs2 ) )
     => ( X = nil_nat ) ) ).

% min_list.cases
thf(fact_362_transpose_Ocases,axiom,
    ! [X: list_list_VEBT_VEBT] :
      ( ( X != nil_list_VEBT_VEBT )
     => ( ! [Xss: list_list_VEBT_VEBT] :
            ( X
           != ( cons_list_VEBT_VEBT @ nil_VEBT_VEBT @ Xss ) )
       => ~ ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Xss: list_list_VEBT_VEBT] :
              ( X
             != ( cons_list_VEBT_VEBT @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_363_transpose_Ocases,axiom,
    ! [X: list_list_int] :
      ( ( X != nil_list_int )
     => ( ! [Xss: list_list_int] :
            ( X
           != ( cons_list_int @ nil_int @ Xss ) )
       => ~ ! [X5: int,Xs2: list_int,Xss: list_list_int] :
              ( X
             != ( cons_list_int @ ( cons_int @ X5 @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_364_transpose_Ocases,axiom,
    ! [X: list_list_nat] :
      ( ( X != nil_list_nat )
     => ( ! [Xss: list_list_nat] :
            ( X
           != ( cons_list_nat @ nil_nat @ Xss ) )
       => ~ ! [X5: nat,Xs2: list_nat,Xss: list_list_nat] :
              ( X
             != ( cons_list_nat @ ( cons_nat @ X5 @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_365_remdups__adj_Ocases,axiom,
    ! [X: list_VEBT_VEBT] :
      ( ( X != nil_VEBT_VEBT )
     => ( ! [X5: vEBT_VEBT] :
            ( X
           != ( cons_VEBT_VEBT @ X5 @ nil_VEBT_VEBT ) )
       => ~ ! [X5: vEBT_VEBT,Y3: vEBT_VEBT,Xs2: list_VEBT_VEBT] :
              ( X
             != ( cons_VEBT_VEBT @ X5 @ ( cons_VEBT_VEBT @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_366_remdups__adj_Ocases,axiom,
    ! [X: list_int] :
      ( ( X != nil_int )
     => ( ! [X5: int] :
            ( X
           != ( cons_int @ X5 @ nil_int ) )
       => ~ ! [X5: int,Y3: int,Xs2: list_int] :
              ( X
             != ( cons_int @ X5 @ ( cons_int @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_367_remdups__adj_Ocases,axiom,
    ! [X: list_nat] :
      ( ( X != nil_nat )
     => ( ! [X5: nat] :
            ( X
           != ( cons_nat @ X5 @ nil_nat ) )
       => ~ ! [X5: nat,Y3: nat,Xs2: list_nat] :
              ( X
             != ( cons_nat @ X5 @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_368_neq__Nil__conv,axiom,
    ! [Xs: list_VEBT_VEBT] :
      ( ( Xs != nil_VEBT_VEBT )
      = ( ? [Y4: vEBT_VEBT,Ys2: list_VEBT_VEBT] :
            ( Xs
            = ( cons_VEBT_VEBT @ Y4 @ Ys2 ) ) ) ) ).

% neq_Nil_conv
thf(fact_369_neq__Nil__conv,axiom,
    ! [Xs: list_int] :
      ( ( Xs != nil_int )
      = ( ? [Y4: int,Ys2: list_int] :
            ( Xs
            = ( cons_int @ Y4 @ Ys2 ) ) ) ) ).

% neq_Nil_conv
thf(fact_370_neq__Nil__conv,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
      = ( ? [Y4: nat,Ys2: list_nat] :
            ( Xs
            = ( cons_nat @ Y4 @ Ys2 ) ) ) ) ).

% neq_Nil_conv
thf(fact_371_list__induct2_H,axiom,
    ! [P: list_VEBT_VEBT > list_VEBT_VEBT > $o,Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( P @ nil_VEBT_VEBT @ nil_VEBT_VEBT )
     => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT] : ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ nil_VEBT_VEBT )
       => ( ! [Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] : ( P @ nil_VEBT_VEBT @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_372_list__induct2_H,axiom,
    ! [P: list_VEBT_VEBT > list_int > $o,Xs: list_VEBT_VEBT,Ys: list_int] :
      ( ( P @ nil_VEBT_VEBT @ nil_int )
     => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT] : ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ nil_int )
       => ( ! [Y3: int,Ys3: list_int] : ( P @ nil_VEBT_VEBT @ ( cons_int @ Y3 @ Ys3 ) )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: int,Ys3: list_int] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_373_list__induct2_H,axiom,
    ! [P: list_VEBT_VEBT > list_nat > $o,Xs: list_VEBT_VEBT,Ys: list_nat] :
      ( ( P @ nil_VEBT_VEBT @ nil_nat )
     => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT] : ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ nil_nat )
       => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_VEBT_VEBT @ ( cons_nat @ Y3 @ Ys3 ) )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: nat,Ys3: list_nat] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_374_list__induct2_H,axiom,
    ! [P: list_int > list_VEBT_VEBT > $o,Xs: list_int,Ys: list_VEBT_VEBT] :
      ( ( P @ nil_int @ nil_VEBT_VEBT )
     => ( ! [X5: int,Xs2: list_int] : ( P @ ( cons_int @ X5 @ Xs2 ) @ nil_VEBT_VEBT )
       => ( ! [Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] : ( P @ nil_int @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) )
         => ( ! [X5: int,Xs2: list_int,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_int @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_375_list__induct2_H,axiom,
    ! [P: list_int > list_int > $o,Xs: list_int,Ys: list_int] :
      ( ( P @ nil_int @ nil_int )
     => ( ! [X5: int,Xs2: list_int] : ( P @ ( cons_int @ X5 @ Xs2 ) @ nil_int )
       => ( ! [Y3: int,Ys3: list_int] : ( P @ nil_int @ ( cons_int @ Y3 @ Ys3 ) )
         => ( ! [X5: int,Xs2: list_int,Y3: int,Ys3: list_int] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_int @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_376_list__induct2_H,axiom,
    ! [P: list_int > list_nat > $o,Xs: list_int,Ys: list_nat] :
      ( ( P @ nil_int @ nil_nat )
     => ( ! [X5: int,Xs2: list_int] : ( P @ ( cons_int @ X5 @ Xs2 ) @ nil_nat )
       => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_int @ ( cons_nat @ Y3 @ Ys3 ) )
         => ( ! [X5: int,Xs2: list_int,Y3: nat,Ys3: list_nat] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_int @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_377_list__induct2_H,axiom,
    ! [P: list_nat > list_VEBT_VEBT > $o,Xs: list_nat,Ys: list_VEBT_VEBT] :
      ( ( P @ nil_nat @ nil_VEBT_VEBT )
     => ( ! [X5: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X5 @ Xs2 ) @ nil_VEBT_VEBT )
       => ( ! [Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] : ( P @ nil_nat @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) )
         => ( ! [X5: nat,Xs2: list_nat,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_378_list__induct2_H,axiom,
    ! [P: list_nat > list_int > $o,Xs: list_nat,Ys: list_int] :
      ( ( P @ nil_nat @ nil_int )
     => ( ! [X5: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X5 @ Xs2 ) @ nil_int )
       => ( ! [Y3: int,Ys3: list_int] : ( P @ nil_nat @ ( cons_int @ Y3 @ Ys3 ) )
         => ( ! [X5: nat,Xs2: list_nat,Y3: int,Ys3: list_int] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_379_list__induct2_H,axiom,
    ! [P: list_nat > list_nat > $o,Xs: list_nat,Ys: list_nat] :
      ( ( P @ nil_nat @ nil_nat )
     => ( ! [X5: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X5 @ Xs2 ) @ nil_nat )
       => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
         => ( ! [X5: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_380_list__nonempty__induct,axiom,
    ! [Xs: list_VEBT_VEBT,P: list_VEBT_VEBT > $o] :
      ( ( Xs != nil_VEBT_VEBT )
     => ( ! [X5: vEBT_VEBT] : ( P @ ( cons_VEBT_VEBT @ X5 @ nil_VEBT_VEBT ) )
       => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT] :
              ( ( Xs2 != nil_VEBT_VEBT )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_381_list__nonempty__induct,axiom,
    ! [Xs: list_int,P: list_int > $o] :
      ( ( Xs != nil_int )
     => ( ! [X5: int] : ( P @ ( cons_int @ X5 @ nil_int ) )
       => ( ! [X5: int,Xs2: list_int] :
              ( ( Xs2 != nil_int )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_int @ X5 @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_382_list__nonempty__induct,axiom,
    ! [Xs: list_nat,P: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X5: nat] : ( P @ ( cons_nat @ X5 @ nil_nat ) )
       => ( ! [X5: nat,Xs2: list_nat] :
              ( ( Xs2 != nil_nat )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_nat @ X5 @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_383_list_Oset__intros_I2_J,axiom,
    ! [Y2: product_prod_nat_nat,X22: list_P6011104703257516679at_nat,X21: product_prod_nat_nat] :
      ( ( member8440522571783428010at_nat @ Y2 @ ( set_Pr5648618587558075414at_nat @ X22 ) )
     => ( member8440522571783428010at_nat @ Y2 @ ( set_Pr5648618587558075414at_nat @ ( cons_P6512896166579812791at_nat @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_384_list_Oset__intros_I2_J,axiom,
    ! [Y2: complex,X22: list_complex,X21: complex] :
      ( ( member_complex @ Y2 @ ( set_complex2 @ X22 ) )
     => ( member_complex @ Y2 @ ( set_complex2 @ ( cons_complex @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_385_list_Oset__intros_I2_J,axiom,
    ! [Y2: real,X22: list_real,X21: real] :
      ( ( member_real @ Y2 @ ( set_real2 @ X22 ) )
     => ( member_real @ Y2 @ ( set_real2 @ ( cons_real @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_386_list_Oset__intros_I2_J,axiom,
    ! [Y2: vEBT_VEBT,X22: list_VEBT_VEBT,X21: vEBT_VEBT] :
      ( ( member_VEBT_VEBT @ Y2 @ ( set_VEBT_VEBT2 @ X22 ) )
     => ( member_VEBT_VEBT @ Y2 @ ( set_VEBT_VEBT2 @ ( cons_VEBT_VEBT @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_387_list_Oset__intros_I2_J,axiom,
    ! [Y2: int,X22: list_int,X21: int] :
      ( ( member_int @ Y2 @ ( set_int2 @ X22 ) )
     => ( member_int @ Y2 @ ( set_int2 @ ( cons_int @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_388_list_Oset__intros_I2_J,axiom,
    ! [Y2: nat,X22: list_nat,X21: nat] :
      ( ( member_nat @ Y2 @ ( set_nat2 @ X22 ) )
     => ( member_nat @ Y2 @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_389_list_Oset__intros_I1_J,axiom,
    ! [X21: product_prod_nat_nat,X22: list_P6011104703257516679at_nat] : ( member8440522571783428010at_nat @ X21 @ ( set_Pr5648618587558075414at_nat @ ( cons_P6512896166579812791at_nat @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_390_list_Oset__intros_I1_J,axiom,
    ! [X21: complex,X22: list_complex] : ( member_complex @ X21 @ ( set_complex2 @ ( cons_complex @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_391_list_Oset__intros_I1_J,axiom,
    ! [X21: real,X22: list_real] : ( member_real @ X21 @ ( set_real2 @ ( cons_real @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_392_list_Oset__intros_I1_J,axiom,
    ! [X21: vEBT_VEBT,X22: list_VEBT_VEBT] : ( member_VEBT_VEBT @ X21 @ ( set_VEBT_VEBT2 @ ( cons_VEBT_VEBT @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_393_list_Oset__intros_I1_J,axiom,
    ! [X21: int,X22: list_int] : ( member_int @ X21 @ ( set_int2 @ ( cons_int @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_394_list_Oset__intros_I1_J,axiom,
    ! [X21: nat,X22: list_nat] : ( member_nat @ X21 @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_395_list_Oset__cases,axiom,
    ! [E: product_prod_nat_nat,A: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ E @ ( set_Pr5648618587558075414at_nat @ A ) )
     => ( ! [Z2: list_P6011104703257516679at_nat] :
            ( A
           != ( cons_P6512896166579812791at_nat @ E @ Z2 ) )
       => ~ ! [Z1: product_prod_nat_nat,Z2: list_P6011104703257516679at_nat] :
              ( ( A
                = ( cons_P6512896166579812791at_nat @ Z1 @ Z2 ) )
             => ~ ( member8440522571783428010at_nat @ E @ ( set_Pr5648618587558075414at_nat @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_396_list_Oset__cases,axiom,
    ! [E: complex,A: list_complex] :
      ( ( member_complex @ E @ ( set_complex2 @ A ) )
     => ( ! [Z2: list_complex] :
            ( A
           != ( cons_complex @ E @ Z2 ) )
       => ~ ! [Z1: complex,Z2: list_complex] :
              ( ( A
                = ( cons_complex @ Z1 @ Z2 ) )
             => ~ ( member_complex @ E @ ( set_complex2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_397_list_Oset__cases,axiom,
    ! [E: real,A: list_real] :
      ( ( member_real @ E @ ( set_real2 @ A ) )
     => ( ! [Z2: list_real] :
            ( A
           != ( cons_real @ E @ Z2 ) )
       => ~ ! [Z1: real,Z2: list_real] :
              ( ( A
                = ( cons_real @ Z1 @ Z2 ) )
             => ~ ( member_real @ E @ ( set_real2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_398_list_Oset__cases,axiom,
    ! [E: vEBT_VEBT,A: list_VEBT_VEBT] :
      ( ( member_VEBT_VEBT @ E @ ( set_VEBT_VEBT2 @ A ) )
     => ( ! [Z2: list_VEBT_VEBT] :
            ( A
           != ( cons_VEBT_VEBT @ E @ Z2 ) )
       => ~ ! [Z1: vEBT_VEBT,Z2: list_VEBT_VEBT] :
              ( ( A
                = ( cons_VEBT_VEBT @ Z1 @ Z2 ) )
             => ~ ( member_VEBT_VEBT @ E @ ( set_VEBT_VEBT2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_399_list_Oset__cases,axiom,
    ! [E: int,A: list_int] :
      ( ( member_int @ E @ ( set_int2 @ A ) )
     => ( ! [Z2: list_int] :
            ( A
           != ( cons_int @ E @ Z2 ) )
       => ~ ! [Z1: int,Z2: list_int] :
              ( ( A
                = ( cons_int @ Z1 @ Z2 ) )
             => ~ ( member_int @ E @ ( set_int2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_400_list_Oset__cases,axiom,
    ! [E: nat,A: list_nat] :
      ( ( member_nat @ E @ ( set_nat2 @ A ) )
     => ( ! [Z2: list_nat] :
            ( A
           != ( cons_nat @ E @ Z2 ) )
       => ~ ! [Z1: nat,Z2: list_nat] :
              ( ( A
                = ( cons_nat @ Z1 @ Z2 ) )
             => ~ ( member_nat @ E @ ( set_nat2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_401_set__ConsD,axiom,
    ! [Y2: product_prod_nat_nat,X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ Y2 @ ( set_Pr5648618587558075414at_nat @ ( cons_P6512896166579812791at_nat @ X @ Xs ) ) )
     => ( ( Y2 = X )
        | ( member8440522571783428010at_nat @ Y2 @ ( set_Pr5648618587558075414at_nat @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_402_set__ConsD,axiom,
    ! [Y2: complex,X: complex,Xs: list_complex] :
      ( ( member_complex @ Y2 @ ( set_complex2 @ ( cons_complex @ X @ Xs ) ) )
     => ( ( Y2 = X )
        | ( member_complex @ Y2 @ ( set_complex2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_403_set__ConsD,axiom,
    ! [Y2: real,X: real,Xs: list_real] :
      ( ( member_real @ Y2 @ ( set_real2 @ ( cons_real @ X @ Xs ) ) )
     => ( ( Y2 = X )
        | ( member_real @ Y2 @ ( set_real2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_404_set__ConsD,axiom,
    ! [Y2: vEBT_VEBT,X: vEBT_VEBT,Xs: list_VEBT_VEBT] :
      ( ( member_VEBT_VEBT @ Y2 @ ( set_VEBT_VEBT2 @ ( cons_VEBT_VEBT @ X @ Xs ) ) )
     => ( ( Y2 = X )
        | ( member_VEBT_VEBT @ Y2 @ ( set_VEBT_VEBT2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_405_set__ConsD,axiom,
    ! [Y2: int,X: int,Xs: list_int] :
      ( ( member_int @ Y2 @ ( set_int2 @ ( cons_int @ X @ Xs ) ) )
     => ( ( Y2 = X )
        | ( member_int @ Y2 @ ( set_int2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_406_set__ConsD,axiom,
    ! [Y2: nat,X: nat,Xs: list_nat] :
      ( ( member_nat @ Y2 @ ( set_nat2 @ ( cons_nat @ X @ Xs ) ) )
     => ( ( Y2 = X )
        | ( member_nat @ Y2 @ ( set_nat2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_407_set__subset__Cons,axiom,
    ! [Xs: list_VEBT_VEBT,X: vEBT_VEBT] : ( ord_le4337996190870823476T_VEBT @ ( set_VEBT_VEBT2 @ Xs ) @ ( set_VEBT_VEBT2 @ ( cons_VEBT_VEBT @ X @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_408_set__subset__Cons,axiom,
    ! [Xs: list_nat,X: nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ ( set_nat2 @ ( cons_nat @ X @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_409_set__subset__Cons,axiom,
    ! [Xs: list_int,X: int] : ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ ( set_int2 @ ( cons_int @ X @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_410_length__induct,axiom,
    ! [P: list_VEBT_VEBT > $o,Xs: list_VEBT_VEBT] :
      ( ! [Xs2: list_VEBT_VEBT] :
          ( ! [Ys4: list_VEBT_VEBT] :
              ( ( ord_less_nat @ ( size_s6755466524823107622T_VEBT @ Ys4 ) @ ( size_s6755466524823107622T_VEBT @ Xs2 ) )
             => ( P @ Ys4 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_411_length__induct,axiom,
    ! [P: list_o > $o,Xs: list_o] :
      ( ! [Xs2: list_o] :
          ( ! [Ys4: list_o] :
              ( ( ord_less_nat @ ( size_size_list_o @ Ys4 ) @ ( size_size_list_o @ Xs2 ) )
             => ( P @ Ys4 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_412_length__induct,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ! [Xs2: list_nat] :
          ( ! [Ys4: list_nat] :
              ( ( ord_less_nat @ ( size_size_list_nat @ Ys4 ) @ ( size_size_list_nat @ Xs2 ) )
             => ( P @ Ys4 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_413_length__induct,axiom,
    ! [P: list_int > $o,Xs: list_int] :
      ( ! [Xs2: list_int] :
          ( ! [Ys4: list_int] :
              ( ( ord_less_nat @ ( size_size_list_int @ Ys4 ) @ ( size_size_list_int @ Xs2 ) )
             => ( P @ Ys4 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_414_append__Cons,axiom,
    ! [X: vEBT_VEBT,Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ X @ Xs ) @ Ys )
      = ( cons_VEBT_VEBT @ X @ ( append_VEBT_VEBT @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_415_append__Cons,axiom,
    ! [X: int,Xs: list_int,Ys: list_int] :
      ( ( append_int @ ( cons_int @ X @ Xs ) @ Ys )
      = ( cons_int @ X @ ( append_int @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_416_append__Cons,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat] :
      ( ( append_nat @ ( cons_nat @ X @ Xs ) @ Ys )
      = ( cons_nat @ X @ ( append_nat @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_417_Cons__eq__appendI,axiom,
    ! [X: vEBT_VEBT,Xs1: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Xs: list_VEBT_VEBT,Zs: list_VEBT_VEBT] :
      ( ( ( cons_VEBT_VEBT @ X @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_VEBT_VEBT @ Xs1 @ Zs ) )
       => ( ( cons_VEBT_VEBT @ X @ Xs )
          = ( append_VEBT_VEBT @ Ys @ Zs ) ) ) ) ).

% Cons_eq_appendI
thf(fact_418_Cons__eq__appendI,axiom,
    ! [X: int,Xs1: list_int,Ys: list_int,Xs: list_int,Zs: list_int] :
      ( ( ( cons_int @ X @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_int @ Xs1 @ Zs ) )
       => ( ( cons_int @ X @ Xs )
          = ( append_int @ Ys @ Zs ) ) ) ) ).

% Cons_eq_appendI
thf(fact_419_Cons__eq__appendI,axiom,
    ! [X: nat,Xs1: list_nat,Ys: list_nat,Xs: list_nat,Zs: list_nat] :
      ( ( ( cons_nat @ X @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_nat @ Xs1 @ Zs ) )
       => ( ( cons_nat @ X @ Xs )
          = ( append_nat @ Ys @ Zs ) ) ) ) ).

% Cons_eq_appendI
thf(fact_420_append__Nil,axiom,
    ! [Ys: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ nil_VEBT_VEBT @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_421_append__Nil,axiom,
    ! [Ys: list_int] :
      ( ( append_int @ nil_int @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_422_append__Nil,axiom,
    ! [Ys: list_nat] :
      ( ( append_nat @ nil_nat @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_423_append_Oleft__neutral,axiom,
    ! [A: list_VEBT_VEBT] :
      ( ( append_VEBT_VEBT @ nil_VEBT_VEBT @ A )
      = A ) ).

% append.left_neutral
thf(fact_424_append_Oleft__neutral,axiom,
    ! [A: list_int] :
      ( ( append_int @ nil_int @ A )
      = A ) ).

% append.left_neutral
thf(fact_425_append_Oleft__neutral,axiom,
    ! [A: list_nat] :
      ( ( append_nat @ nil_nat @ A )
      = A ) ).

% append.left_neutral
thf(fact_426_eq__Nil__appendI,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_VEBT_VEBT @ nil_VEBT_VEBT @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_427_eq__Nil__appendI,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_int @ nil_int @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_428_eq__Nil__appendI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_nat @ nil_nat @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_429_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_VEBT_VEBT @ N @ nil_VEBT_VEBT )
      = nil_VEBT_VEBT ) ).

% take_Nil
thf(fact_430_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_int @ N @ nil_int )
      = nil_int ) ).

% take_Nil
thf(fact_431_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_nat @ N @ nil_nat )
      = nil_nat ) ).

% take_Nil
thf(fact_432_in__set__takeD,axiom,
    ! [X: product_prod_nat_nat,N: nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ X @ ( set_Pr5648618587558075414at_nat @ ( take_P2173866234530122223at_nat @ N @ Xs ) ) )
     => ( member8440522571783428010at_nat @ X @ ( set_Pr5648618587558075414at_nat @ Xs ) ) ) ).

% in_set_takeD
thf(fact_433_in__set__takeD,axiom,
    ! [X: complex,N: nat,Xs: list_complex] :
      ( ( member_complex @ X @ ( set_complex2 @ ( take_complex @ N @ Xs ) ) )
     => ( member_complex @ X @ ( set_complex2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_434_in__set__takeD,axiom,
    ! [X: real,N: nat,Xs: list_real] :
      ( ( member_real @ X @ ( set_real2 @ ( take_real @ N @ Xs ) ) )
     => ( member_real @ X @ ( set_real2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_435_in__set__takeD,axiom,
    ! [X: vEBT_VEBT,N: nat,Xs: list_VEBT_VEBT] :
      ( ( member_VEBT_VEBT @ X @ ( set_VEBT_VEBT2 @ ( take_VEBT_VEBT @ N @ Xs ) ) )
     => ( member_VEBT_VEBT @ X @ ( set_VEBT_VEBT2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_436_in__set__takeD,axiom,
    ! [X: int,N: nat,Xs: list_int] :
      ( ( member_int @ X @ ( set_int2 @ ( take_int @ N @ Xs ) ) )
     => ( member_int @ X @ ( set_int2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_437_in__set__takeD,axiom,
    ! [X: nat,N: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ ( take_nat @ N @ Xs ) ) )
     => ( member_nat @ X @ ( set_nat2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_438_set__take__subset,axiom,
    ! [N: nat,Xs: list_VEBT_VEBT] : ( ord_le4337996190870823476T_VEBT @ ( set_VEBT_VEBT2 @ ( take_VEBT_VEBT @ N @ Xs ) ) @ ( set_VEBT_VEBT2 @ Xs ) ) ).

% set_take_subset
thf(fact_439_set__take__subset,axiom,
    ! [N: nat,Xs: list_nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ ( take_nat @ N @ Xs ) ) @ ( set_nat2 @ Xs ) ) ).

% set_take_subset
thf(fact_440_set__take__subset,axiom,
    ! [N: nat,Xs: list_int] : ( ord_less_eq_set_int @ ( set_int2 @ ( take_int @ N @ Xs ) ) @ ( set_int2 @ Xs ) ) ).

% set_take_subset
thf(fact_441_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_VEBT_VEBT @ N @ nil_VEBT_VEBT )
      = nil_VEBT_VEBT ) ).

% drop_Nil
thf(fact_442_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_int @ N @ nil_int )
      = nil_int ) ).

% drop_Nil
thf(fact_443_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_nat @ N @ nil_nat )
      = nil_nat ) ).

% drop_Nil
thf(fact_444_in__set__dropD,axiom,
    ! [X: product_prod_nat_nat,N: nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ X @ ( set_Pr5648618587558075414at_nat @ ( drop_P8868858903918902087at_nat @ N @ Xs ) ) )
     => ( member8440522571783428010at_nat @ X @ ( set_Pr5648618587558075414at_nat @ Xs ) ) ) ).

% in_set_dropD
thf(fact_445_in__set__dropD,axiom,
    ! [X: complex,N: nat,Xs: list_complex] :
      ( ( member_complex @ X @ ( set_complex2 @ ( drop_complex @ N @ Xs ) ) )
     => ( member_complex @ X @ ( set_complex2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_446_in__set__dropD,axiom,
    ! [X: real,N: nat,Xs: list_real] :
      ( ( member_real @ X @ ( set_real2 @ ( drop_real @ N @ Xs ) ) )
     => ( member_real @ X @ ( set_real2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_447_in__set__dropD,axiom,
    ! [X: vEBT_VEBT,N: nat,Xs: list_VEBT_VEBT] :
      ( ( member_VEBT_VEBT @ X @ ( set_VEBT_VEBT2 @ ( drop_VEBT_VEBT @ N @ Xs ) ) )
     => ( member_VEBT_VEBT @ X @ ( set_VEBT_VEBT2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_448_in__set__dropD,axiom,
    ! [X: int,N: nat,Xs: list_int] :
      ( ( member_int @ X @ ( set_int2 @ ( drop_int @ N @ Xs ) ) )
     => ( member_int @ X @ ( set_int2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_449_in__set__dropD,axiom,
    ! [X: nat,N: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ ( drop_nat @ N @ Xs ) ) )
     => ( member_nat @ X @ ( set_nat2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_450_set__drop__subset,axiom,
    ! [N: nat,Xs: list_VEBT_VEBT] : ( ord_le4337996190870823476T_VEBT @ ( set_VEBT_VEBT2 @ ( drop_VEBT_VEBT @ N @ Xs ) ) @ ( set_VEBT_VEBT2 @ Xs ) ) ).

% set_drop_subset
thf(fact_451_set__drop__subset,axiom,
    ! [N: nat,Xs: list_nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ ( drop_nat @ N @ Xs ) ) @ ( set_nat2 @ Xs ) ) ).

% set_drop_subset
thf(fact_452_set__drop__subset,axiom,
    ! [N: nat,Xs: list_int] : ( ord_less_eq_set_int @ ( set_int2 @ ( drop_int @ N @ Xs ) ) @ ( set_int2 @ Xs ) ) ).

% set_drop_subset
thf(fact_453_list__induct2,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,P: list_VEBT_VEBT > list_VEBT_VEBT > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( ( P @ nil_VEBT_VEBT @ nil_VEBT_VEBT )
       => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] :
              ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                = ( size_s6755466524823107622T_VEBT @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_454_list__induct2,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_o,P: list_VEBT_VEBT > list_o > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ( P @ nil_VEBT_VEBT @ nil_o )
       => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: $o,Ys3: list_o] :
              ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                = ( size_size_list_o @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_o @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_455_list__induct2,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_nat,P: list_VEBT_VEBT > list_nat > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P @ nil_VEBT_VEBT @ nil_nat )
       => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: nat,Ys3: list_nat] :
              ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                = ( size_size_list_nat @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_456_list__induct2,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_int,P: list_VEBT_VEBT > list_int > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( P @ nil_VEBT_VEBT @ nil_int )
       => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: int,Ys3: list_int] :
              ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                = ( size_size_list_int @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_457_list__induct2,axiom,
    ! [Xs: list_o,Ys: list_VEBT_VEBT,P: list_o > list_VEBT_VEBT > $o] :
      ( ( ( size_size_list_o @ Xs )
        = ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( ( P @ nil_o @ nil_VEBT_VEBT )
       => ( ! [X5: $o,Xs2: list_o,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] :
              ( ( ( size_size_list_o @ Xs2 )
                = ( size_s6755466524823107622T_VEBT @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_o @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_458_list__induct2,axiom,
    ! [Xs: list_o,Ys: list_o,P: list_o > list_o > $o] :
      ( ( ( size_size_list_o @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ( P @ nil_o @ nil_o )
       => ( ! [X5: $o,Xs2: list_o,Y3: $o,Ys3: list_o] :
              ( ( ( size_size_list_o @ Xs2 )
                = ( size_size_list_o @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_o @ X5 @ Xs2 ) @ ( cons_o @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_459_list__induct2,axiom,
    ! [Xs: list_o,Ys: list_nat,P: list_o > list_nat > $o] :
      ( ( ( size_size_list_o @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P @ nil_o @ nil_nat )
       => ( ! [X5: $o,Xs2: list_o,Y3: nat,Ys3: list_nat] :
              ( ( ( size_size_list_o @ Xs2 )
                = ( size_size_list_nat @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_o @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_460_list__induct2,axiom,
    ! [Xs: list_o,Ys: list_int,P: list_o > list_int > $o] :
      ( ( ( size_size_list_o @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( P @ nil_o @ nil_int )
       => ( ! [X5: $o,Xs2: list_o,Y3: int,Ys3: list_int] :
              ( ( ( size_size_list_o @ Xs2 )
                = ( size_size_list_int @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_o @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_461_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_VEBT_VEBT,P: list_nat > list_VEBT_VEBT > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( ( P @ nil_nat @ nil_VEBT_VEBT )
       => ( ! [X5: nat,Xs2: list_nat,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT] :
              ( ( ( size_size_list_nat @ Xs2 )
                = ( size_s6755466524823107622T_VEBT @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_462_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_o,P: list_nat > list_o > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ( P @ nil_nat @ nil_o )
       => ( ! [X5: nat,Xs2: list_nat,Y3: $o,Ys3: list_o] :
              ( ( ( size_size_list_nat @ Xs2 )
                = ( size_size_list_o @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_o @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_463_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Zs: list_VEBT_VEBT,P: list_VEBT_VEBT > list_VEBT_VEBT > list_VEBT_VEBT > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( ( ( size_s6755466524823107622T_VEBT @ Ys )
          = ( size_s6755466524823107622T_VEBT @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_VEBT_VEBT @ nil_VEBT_VEBT )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT,Z3: vEBT_VEBT,Zs2: list_VEBT_VEBT] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_s6755466524823107622T_VEBT @ Ys3 ) )
               => ( ( ( size_s6755466524823107622T_VEBT @ Ys3 )
                    = ( size_s6755466524823107622T_VEBT @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) @ ( cons_VEBT_VEBT @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_464_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Zs: list_o,P: list_VEBT_VEBT > list_VEBT_VEBT > list_o > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( ( ( size_s6755466524823107622T_VEBT @ Ys )
          = ( size_size_list_o @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_VEBT_VEBT @ nil_o )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT,Z3: $o,Zs2: list_o] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_s6755466524823107622T_VEBT @ Ys3 ) )
               => ( ( ( size_s6755466524823107622T_VEBT @ Ys3 )
                    = ( size_size_list_o @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) @ ( cons_o @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_465_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Zs: list_nat,P: list_VEBT_VEBT > list_VEBT_VEBT > list_nat > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( ( ( size_s6755466524823107622T_VEBT @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_VEBT_VEBT @ nil_nat )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT,Z3: nat,Zs2: list_nat] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_s6755466524823107622T_VEBT @ Ys3 ) )
               => ( ( ( size_s6755466524823107622T_VEBT @ Ys3 )
                    = ( size_size_list_nat @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) @ ( cons_nat @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_466_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_VEBT_VEBT,Zs: list_int,P: list_VEBT_VEBT > list_VEBT_VEBT > list_int > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_s6755466524823107622T_VEBT @ Ys ) )
     => ( ( ( size_s6755466524823107622T_VEBT @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_VEBT_VEBT @ nil_int )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: vEBT_VEBT,Ys3: list_VEBT_VEBT,Z3: int,Zs2: list_int] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_s6755466524823107622T_VEBT @ Ys3 ) )
               => ( ( ( size_s6755466524823107622T_VEBT @ Ys3 )
                    = ( size_size_list_int @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_VEBT_VEBT @ Y3 @ Ys3 ) @ ( cons_int @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_467_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_o,Zs: list_VEBT_VEBT,P: list_VEBT_VEBT > list_o > list_VEBT_VEBT > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ( ( size_size_list_o @ Ys )
          = ( size_s6755466524823107622T_VEBT @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_o @ nil_VEBT_VEBT )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: $o,Ys3: list_o,Z3: vEBT_VEBT,Zs2: list_VEBT_VEBT] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_size_list_o @ Ys3 ) )
               => ( ( ( size_size_list_o @ Ys3 )
                    = ( size_s6755466524823107622T_VEBT @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_o @ Y3 @ Ys3 ) @ ( cons_VEBT_VEBT @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_468_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_o,Zs: list_o,P: list_VEBT_VEBT > list_o > list_o > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ( ( size_size_list_o @ Ys )
          = ( size_size_list_o @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_o @ nil_o )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: $o,Ys3: list_o,Z3: $o,Zs2: list_o] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_size_list_o @ Ys3 ) )
               => ( ( ( size_size_list_o @ Ys3 )
                    = ( size_size_list_o @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_o @ Y3 @ Ys3 ) @ ( cons_o @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_469_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_o,Zs: list_nat,P: list_VEBT_VEBT > list_o > list_nat > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ( ( size_size_list_o @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_o @ nil_nat )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: $o,Ys3: list_o,Z3: nat,Zs2: list_nat] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_size_list_o @ Ys3 ) )
               => ( ( ( size_size_list_o @ Ys3 )
                    = ( size_size_list_nat @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_o @ Y3 @ Ys3 ) @ ( cons_nat @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_470_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_o,Zs: list_int,P: list_VEBT_VEBT > list_o > list_int > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ( ( size_size_list_o @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_o @ nil_int )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: $o,Ys3: list_o,Z3: int,Zs2: list_int] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_size_list_o @ Ys3 ) )
               => ( ( ( size_size_list_o @ Ys3 )
                    = ( size_size_list_int @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_o @ Y3 @ Ys3 ) @ ( cons_int @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_471_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_nat,Zs: list_VEBT_VEBT,P: list_VEBT_VEBT > list_nat > list_VEBT_VEBT > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s6755466524823107622T_VEBT @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_nat @ nil_VEBT_VEBT )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: nat,Ys3: list_nat,Z3: vEBT_VEBT,Zs2: list_VEBT_VEBT] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_size_list_nat @ Ys3 ) )
               => ( ( ( size_size_list_nat @ Ys3 )
                    = ( size_s6755466524823107622T_VEBT @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_VEBT_VEBT @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_472_list__induct3,axiom,
    ! [Xs: list_VEBT_VEBT,Ys: list_nat,Zs: list_o,P: list_VEBT_VEBT > list_nat > list_o > $o] :
      ( ( ( size_s6755466524823107622T_VEBT @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_o @ Zs ) )
       => ( ( P @ nil_VEBT_VEBT @ nil_nat @ nil_o )
         => ( ! [X5: vEBT_VEBT,Xs2: list_VEBT_VEBT,Y3: nat,Ys3: list_nat,Z3: $o,Zs2: list_o] :
                ( ( ( size_s6755466524823107622T_VEBT @ Xs2 )
                  = ( size_size_list_nat @ Ys3 ) )
               => ( ( ( size_size_list_nat @ Ys3 )
                    = ( size_size_list_o @ Zs2 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs2 )
                   => ( P @ ( cons_VEBT_VEBT @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_o @ Z3 @ Zs2 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_473_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_int,Ws: list_VEBT_VEBT,P: list_nat > list_nat > list_int > list_VEBT_VEBT > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( ( size_size_list_int @ Zs )
            = ( size_s6755466524823107622T_VEBT @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_int @ nil_VEBT_VEBT )
           => ( ! [X5: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat,Z3: int,Zs2: list_int,W2: vEBT_VEBT,Ws2: list_VEBT_VEBT] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_nat @ Ys3 ) )
                 => ( ( ( size_size_list_nat @ Ys3 )
                      = ( size_size_list_int @ Zs2 ) )
                   => ( ( ( size_size_list_int @ Zs2 )
                        = ( size_s6755466524823107622T_VEBT @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_int @ Z3 @ Zs2 ) @ ( cons_VEBT_VEBT @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_474_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_int,Ws: list_o,P: list_nat > list_nat > list_int > list_o > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( ( size_size_list_int @ Zs )
            = ( size_size_list_o @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_int @ nil_o )
           => ( ! [X5: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat,Z3: int,Zs2: list_int,W2: $o,Ws2: list_o] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_nat @ Ys3 ) )
                 => ( ( ( size_size_list_nat @ Ys3 )
                      = ( size_size_list_int @ Zs2 ) )
                   => ( ( ( size_size_list_int @ Zs2 )
                        = ( size_size_list_o @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_int @ Z3 @ Zs2 ) @ ( cons_o @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_475_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_int,Ws: list_nat,P: list_nat > list_nat > list_int > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( ( size_size_list_int @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_int @ nil_nat )
           => ( ! [X5: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat,Z3: int,Zs2: list_int,W2: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_nat @ Ys3 ) )
                 => ( ( ( size_size_list_nat @ Ys3 )
                      = ( size_size_list_int @ Zs2 ) )
                   => ( ( ( size_size_list_int @ Zs2 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_int @ Z3 @ Zs2 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_476_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_int,Ws: list_int,P: list_nat > list_nat > list_int > list_int > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( ( size_size_list_int @ Zs )
            = ( size_size_list_int @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_int @ nil_int )
           => ( ! [X5: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat,Z3: int,Zs2: list_int,W2: int,Ws2: list_int] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_nat @ Ys3 ) )
                 => ( ( ( size_size_list_nat @ Ys3 )
                      = ( size_size_list_int @ Zs2 ) )
                   => ( ( ( size_size_list_int @ Zs2 )
                        = ( size_size_list_int @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) @ ( cons_int @ Z3 @ Zs2 ) @ ( cons_int @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_477_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_VEBT_VEBT,Ws: list_VEBT_VEBT,P: list_nat > list_int > list_VEBT_VEBT > list_VEBT_VEBT > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_s6755466524823107622T_VEBT @ Zs ) )
       => ( ( ( size_s6755466524823107622T_VEBT @ Zs )
            = ( size_s6755466524823107622T_VEBT @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_VEBT_VEBT @ nil_VEBT_VEBT )
           => ( ! [X5: nat,Xs2: list_nat,Y3: int,Ys3: list_int,Z3: vEBT_VEBT,Zs2: list_VEBT_VEBT,W2: vEBT_VEBT,Ws2: list_VEBT_VEBT] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys3 ) )
                 => ( ( ( size_size_list_int @ Ys3 )
                      = ( size_s6755466524823107622T_VEBT @ Zs2 ) )
                   => ( ( ( size_s6755466524823107622T_VEBT @ Zs2 )
                        = ( size_s6755466524823107622T_VEBT @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) @ ( cons_VEBT_VEBT @ Z3 @ Zs2 ) @ ( cons_VEBT_VEBT @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_478_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_VEBT_VEBT,Ws: list_o,P: list_nat > list_int > list_VEBT_VEBT > list_o > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_s6755466524823107622T_VEBT @ Zs ) )
       => ( ( ( size_s6755466524823107622T_VEBT @ Zs )
            = ( size_size_list_o @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_VEBT_VEBT @ nil_o )
           => ( ! [X5: nat,Xs2: list_nat,Y3: int,Ys3: list_int,Z3: vEBT_VEBT,Zs2: list_VEBT_VEBT,W2: $o,Ws2: list_o] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys3 ) )
                 => ( ( ( size_size_list_int @ Ys3 )
                      = ( size_s6755466524823107622T_VEBT @ Zs2 ) )
                   => ( ( ( size_s6755466524823107622T_VEBT @ Zs2 )
                        = ( size_size_list_o @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) @ ( cons_VEBT_VEBT @ Z3 @ Zs2 ) @ ( cons_o @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_479_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_VEBT_VEBT,Ws: list_nat,P: list_nat > list_int > list_VEBT_VEBT > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_s6755466524823107622T_VEBT @ Zs ) )
       => ( ( ( size_s6755466524823107622T_VEBT @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_VEBT_VEBT @ nil_nat )
           => ( ! [X5: nat,Xs2: list_nat,Y3: int,Ys3: list_int,Z3: vEBT_VEBT,Zs2: list_VEBT_VEBT,W2: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys3 ) )
                 => ( ( ( size_size_list_int @ Ys3 )
                      = ( size_s6755466524823107622T_VEBT @ Zs2 ) )
                   => ( ( ( size_s6755466524823107622T_VEBT @ Zs2 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) @ ( cons_VEBT_VEBT @ Z3 @ Zs2 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_480_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_VEBT_VEBT,Ws: list_int,P: list_nat > list_int > list_VEBT_VEBT > list_int > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_s6755466524823107622T_VEBT @ Zs ) )
       => ( ( ( size_s6755466524823107622T_VEBT @ Zs )
            = ( size_size_list_int @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_VEBT_VEBT @ nil_int )
           => ( ! [X5: nat,Xs2: list_nat,Y3: int,Ys3: list_int,Z3: vEBT_VEBT,Zs2: list_VEBT_VEBT,W2: int,Ws2: list_int] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys3 ) )
                 => ( ( ( size_size_list_int @ Ys3 )
                      = ( size_s6755466524823107622T_VEBT @ Zs2 ) )
                   => ( ( ( size_s6755466524823107622T_VEBT @ Zs2 )
                        = ( size_size_list_int @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) @ ( cons_VEBT_VEBT @ Z3 @ Zs2 ) @ ( cons_int @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_481_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_o,Ws: list_VEBT_VEBT,P: list_nat > list_int > list_o > list_VEBT_VEBT > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_o @ Zs ) )
       => ( ( ( size_size_list_o @ Zs )
            = ( size_s6755466524823107622T_VEBT @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_o @ nil_VEBT_VEBT )
           => ( ! [X5: nat,Xs2: list_nat,Y3: int,Ys3: list_int,Z3: $o,Zs2: list_o,W2: vEBT_VEBT,Ws2: list_VEBT_VEBT] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys3 ) )
                 => ( ( ( size_size_list_int @ Ys3 )
                      = ( size_size_list_o @ Zs2 ) )
                   => ( ( ( size_size_list_o @ Zs2 )
                        = ( size_s6755466524823107622T_VEBT @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) @ ( cons_o @ Z3 @ Zs2 ) @ ( cons_VEBT_VEBT @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_482_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_o,Ws: list_o,P: list_nat > list_int > list_o > list_o > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_o @ Zs ) )
       => ( ( ( size_size_list_o @ Zs )
            = ( size_size_list_o @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_o @ nil_o )
           => ( ! [X5: nat,Xs2: list_nat,Y3: int,Ys3: list_int,Z3: $o,Zs2: list_o,W2: $o,Ws2: list_o] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys3 ) )
                 => ( ( ( size_size_list_int @ Ys3 )
                      = ( size_size_list_o @ Zs2 ) )
                   => ( ( ( size_size_list_o @ Zs2 )
                        = ( size_size_list_o @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X5 @ Xs2 ) @ ( cons_int @ Y3 @ Ys3 ) @ ( cons_o @ Z3 @ Zs2 ) @ ( cons_o @ W2 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_483_post__member__pre__member,axiom,
    ! [T: vEBT_VEBT,N: nat,X: nat,Y2: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
       => ( ( ord_less_nat @ Y2 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
         => ( ( vEBT_vebt_member @ ( vEBT_vebt_insert @ T @ X ) @ Y2 )
           => ( ( vEBT_vebt_member @ T @ Y2 )
              | ( X = Y2 ) ) ) ) ) ) ).

% post_member_pre_member
thf(fact_484_member__bound,axiom,
    ! [Tree: vEBT_VEBT,X: nat,N: nat] :
      ( ( vEBT_vebt_member @ Tree @ X )
     => ( ( vEBT_invar_vebt @ Tree @ N )
       => ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% member_bound
thf(fact_485_bit__concat__def,axiom,
    ( vEBT_VEBT_bit_concat
    = ( ^ [H: nat,L: nat,D2: nat] : ( plus_plus_nat @ ( times_times_nat @ H @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ D2 ) ) @ L ) ) ) ).

% bit_concat_def
thf(fact_486_low__inv,axiom,
    ! [X: nat,N: nat,Y2: nat] :
      ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
     => ( ( vEBT_VEBT_low @ ( plus_plus_nat @ ( times_times_nat @ Y2 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) @ X ) @ N )
        = X ) ) ).

% low_inv
thf(fact_487_high__inv,axiom,
    ! [X: nat,N: nat,Y2: nat] :
      ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
     => ( ( vEBT_VEBT_high @ ( plus_plus_nat @ ( times_times_nat @ Y2 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) @ X ) @ N )
        = Y2 ) ) ).

% high_inv
thf(fact_488__C9_C,axiom,
    ( ( divide_divide_nat @ deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = na ) ).

% "9"
thf(fact_489_nat__add__left__cancel__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_490_even__odd__cases,axiom,
    ! [X: nat] :
      ( ! [N4: nat] :
          ( X
         != ( plus_plus_nat @ N4 @ N4 ) )
     => ~ ! [N4: nat] :
            ( X
           != ( plus_plus_nat @ N4 @ ( suc @ N4 ) ) ) ) ).

% even_odd_cases
thf(fact_491_min__Null__member,axiom,
    ! [T: vEBT_VEBT,X: nat] :
      ( ( vEBT_VEBT_minNull @ T )
     => ~ ( vEBT_vebt_member @ T @ X ) ) ).

% min_Null_member
thf(fact_492_valid__member__both__member__options,axiom,
    ! [T: vEBT_VEBT,N: nat,X: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( vEBT_V8194947554948674370ptions @ T @ X )
       => ( vEBT_vebt_member @ T @ X ) ) ) ).

% valid_member_both_member_options
thf(fact_493_both__member__options__equiv__member,axiom,
    ! [T: vEBT_VEBT,N: nat,X: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( vEBT_V8194947554948674370ptions @ T @ X )
        = ( vEBT_vebt_member @ T @ X ) ) ) ).

% both_member_options_equiv_member
thf(fact_494_nat_Oinject,axiom,
    ! [X23: nat,Y23: nat] :
      ( ( ( suc @ X23 )
        = ( suc @ Y23 ) )
      = ( X23 = Y23 ) ) ).

% nat.inject
thf(fact_495_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_496_member__correct,axiom,
    ! [T: vEBT_VEBT,N: nat,X: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( vEBT_vebt_member @ T @ X )
        = ( member_nat @ X @ ( vEBT_set_vebt @ T ) ) ) ) ).

% member_correct
thf(fact_497_pow__sum,axiom,
    ! [A: nat,B: nat] :
      ( ( divide_divide_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ B ) ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) ).

% pow_sum
thf(fact_498_high__def,axiom,
    ( vEBT_VEBT_high
    = ( ^ [X4: nat,N2: nat] : ( divide_divide_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% high_def
thf(fact_499_Suc__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_less_eq
thf(fact_500_Suc__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_501_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

% lessI
thf(fact_502_Suc__le__mono,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M ) )
      = ( ord_less_eq_nat @ N @ M ) ) ).

% Suc_le_mono
thf(fact_503_add__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ M @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc_right
thf(fact_504_nat__add__left__cancel__less,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_505_nat__mult__eq__1__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = one_one_nat )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_mult_eq_1_iff
thf(fact_506_nat__1__eq__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( one_one_nat
        = ( times_times_nat @ M @ N ) )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_1_eq_mult_iff
thf(fact_507_max__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_max_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( suc @ ( ord_max_nat @ M @ N ) ) ) ).

% max_Suc_Suc
thf(fact_508_mult__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( times_times_nat @ M @ ( suc @ N ) )
      = ( plus_plus_nat @ M @ ( times_times_nat @ M @ N ) ) ) ).

% mult_Suc_right
thf(fact_509_Suc__numeral,axiom,
    ! [N: num] :
      ( ( suc @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ N @ one ) ) ) ).

% Suc_numeral
thf(fact_510_add__2__eq__Suc_H,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc'
thf(fact_511_add__2__eq__Suc,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc
thf(fact_512_Suc__1,axiom,
    ( ( suc @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% Suc_1
thf(fact_513_Suc__inject,axiom,
    ! [X: nat,Y2: nat] :
      ( ( ( suc @ X )
        = ( suc @ Y2 ) )
     => ( X = Y2 ) ) ).

% Suc_inject
thf(fact_514_n__not__Suc__n,axiom,
    ! [N: nat] :
      ( N
     != ( suc @ N ) ) ).

% n_not_Suc_n
thf(fact_515_Suc__mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ ( suc @ K ) @ M )
        = ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( M = N ) ) ).

% Suc_mult_cancel1
thf(fact_516_Suc__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ ( suc @ K ) @ M ) @ ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_mult_less_cancel1
thf(fact_517_Suc__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ ( suc @ K ) @ M ) @ ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_mult_le_cancel1
thf(fact_518_mult__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ N @ ( times_times_nat @ M @ N ) ) ) ).

% mult_Suc
thf(fact_519_not__less__less__Suc__eq,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% not_less_less_Suc_eq
thf(fact_520_strict__inc__induct,axiom,
    ! [I2: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ! [I3: nat] :
            ( ( J
              = ( suc @ I3 ) )
           => ( P @ I3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ J )
             => ( ( P @ ( suc @ I3 ) )
               => ( P @ I3 ) ) )
         => ( P @ I2 ) ) ) ) ).

% strict_inc_induct
thf(fact_521_less__Suc__induct,axiom,
    ! [I2: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
       => ( ! [I3: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I3 @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P @ I3 @ J2 )
                 => ( ( P @ J2 @ K2 )
                   => ( P @ I3 @ K2 ) ) ) ) )
         => ( P @ I2 @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_522_less__trans__Suc,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( ord_less_nat @ J @ K )
       => ( ord_less_nat @ ( suc @ I2 ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_523_Suc__less__SucD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_less_SucD
thf(fact_524_less__antisym,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
       => ( M = N ) ) ) ).

% less_antisym
thf(fact_525_Suc__less__eq2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M )
      = ( ? [M2: nat] :
            ( ( M
              = ( suc @ M2 ) )
            & ( ord_less_nat @ N @ M2 ) ) ) ) ).

% Suc_less_eq2
thf(fact_526_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P @ I4 ) ) )
      = ( ( P @ N )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P @ I4 ) ) ) ) ).

% All_less_Suc
thf(fact_527_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_528_less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( M = N ) ) ) ).

% less_Suc_eq
thf(fact_529_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P @ I4 ) ) )
      = ( ( P @ N )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P @ I4 ) ) ) ) ).

% Ex_less_Suc
thf(fact_530_less__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_531_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

% less_SucE
thf(fact_532_Suc__lessI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ( suc @ M )
         != N )
       => ( ord_less_nat @ ( suc @ M ) @ N ) ) ) ).

% Suc_lessI
thf(fact_533_Suc__lessE,axiom,
    ! [I2: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I2 ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I2 @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_534_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_535_Nat_OlessE,axiom,
    ! [I2: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ K )
     => ( ( K
         != ( suc @ I2 ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I2 @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_536_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X5: nat] : ( R @ X5 @ X5 )
       => ( ! [X5: nat,Y3: nat,Z3: nat] :
              ( ( R @ X5 @ Y3 )
             => ( ( R @ Y3 @ Z3 )
               => ( R @ X5 @ Z3 ) ) )
         => ( ! [N4: nat] : ( R @ N4 @ ( suc @ N4 ) )
           => ( R @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_537_nat__induct__at__least,axiom,
    ! [M: nat,N: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( P @ M )
       => ( ! [N4: nat] :
              ( ( ord_less_eq_nat @ M @ N4 )
             => ( ( P @ N4 )
               => ( P @ ( suc @ N4 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_538_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N4: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M3 ) @ N4 )
             => ( P @ M3 ) )
         => ( P @ N4 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_539_not__less__eq__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_eq_nat @ M @ N ) )
      = ( ord_less_eq_nat @ ( suc @ N ) @ M ) ) ).

% not_less_eq_eq
thf(fact_540_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_541_le__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_eq_nat @ M @ N )
        | ( M
          = ( suc @ N ) ) ) ) ).

% le_Suc_eq
thf(fact_542_Suc__le__D,axiom,
    ! [N: nat,M4: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M4 )
     => ? [M5: nat] :
          ( M4
          = ( suc @ M5 ) ) ) ).

% Suc_le_D
thf(fact_543_le__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_544_le__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_eq_nat @ M @ N )
       => ( M
          = ( suc @ N ) ) ) ) ).

% le_SucE
thf(fact_545_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_leD
thf(fact_546_mult__le__mono2,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ K @ I2 ) @ ( times_times_nat @ K @ J ) ) ) ).

% mult_le_mono2
thf(fact_547_mult__le__mono1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ I2 @ K ) @ ( times_times_nat @ J @ K ) ) ) ).

% mult_le_mono1
thf(fact_548_mult__le__mono,axiom,
    ! [I2: nat,J: nat,K: nat,L2: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_eq_nat @ K @ L2 )
       => ( ord_less_eq_nat @ ( times_times_nat @ I2 @ K ) @ ( times_times_nat @ J @ L2 ) ) ) ) ).

% mult_le_mono
thf(fact_549_le__square,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ M ) ) ).

% le_square
thf(fact_550_le__cube,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ ( times_times_nat @ M @ M ) ) ) ).

% le_cube
thf(fact_551_add__Suc__shift,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_552_add__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc
thf(fact_553_nat__arith_Osuc1,axiom,
    ! [A2: nat,K: nat,A: nat] :
      ( ( A2
        = ( plus_plus_nat @ K @ A ) )
     => ( ( suc @ A2 )
        = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).

% nat_arith.suc1
thf(fact_554_add__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% add_mult_distrib2
thf(fact_555_add__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ M @ N ) @ K )
      = ( plus_plus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% add_mult_distrib
thf(fact_556_nat__mult__1__right,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ N @ one_one_nat )
      = N ) ).

% nat_mult_1_right
thf(fact_557_nat__mult__1,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ one_one_nat @ N )
      = N ) ).

% nat_mult_1
thf(fact_558_nat__mult__max__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ M @ ( ord_max_nat @ N @ Q2 ) )
      = ( ord_max_nat @ ( times_times_nat @ M @ N ) @ ( times_times_nat @ M @ Q2 ) ) ) ).

% nat_mult_max_right
thf(fact_559_nat__mult__max__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ ( ord_max_nat @ M @ N ) @ Q2 )
      = ( ord_max_nat @ ( times_times_nat @ M @ Q2 ) @ ( times_times_nat @ N @ Q2 ) ) ) ).

% nat_mult_max_left
thf(fact_560_left__add__mult__distrib,axiom,
    ! [I2: nat,U: nat,J: nat,K: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ K ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ I2 @ J ) @ U ) @ K ) ) ).

% left_add_mult_distrib
thf(fact_561_le__imp__less__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% le_imp_less_Suc
thf(fact_562_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N2: nat] : ( ord_less_eq_nat @ ( suc @ N2 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_563_less__Suc__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% less_Suc_eq_le
thf(fact_564_le__less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% le_less_Suc_eq
thf(fact_565_Suc__le__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_le_lessD
thf(fact_566_inc__induct,axiom,
    ! [I2: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( P @ J )
       => ( ! [N4: nat] :
              ( ( ord_less_eq_nat @ I2 @ N4 )
             => ( ( ord_less_nat @ N4 @ J )
               => ( ( P @ ( suc @ N4 ) )
                 => ( P @ N4 ) ) ) )
         => ( P @ I2 ) ) ) ) ).

% inc_induct
thf(fact_567_dec__induct,axiom,
    ! [I2: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( P @ I2 )
       => ( ! [N4: nat] :
              ( ( ord_less_eq_nat @ I2 @ N4 )
             => ( ( ord_less_nat @ N4 @ J )
               => ( ( P @ N4 )
                 => ( P @ ( suc @ N4 ) ) ) ) )
         => ( P @ J ) ) ) ) ).

% dec_induct
thf(fact_568_Suc__le__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_le_eq
thf(fact_569_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_570_less__imp__Suc__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ? [K2: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M @ K2 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_571_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M6: nat,N2: nat] :
        ? [K3: nat] :
          ( N2
          = ( suc @ ( plus_plus_nat @ M6 @ K3 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_572_less__add__Suc2,axiom,
    ! [I2: nat,M: nat] : ( ord_less_nat @ I2 @ ( suc @ ( plus_plus_nat @ M @ I2 ) ) ) ).

% less_add_Suc2
thf(fact_573_less__add__Suc1,axiom,
    ! [I2: nat,M: nat] : ( ord_less_nat @ I2 @ ( suc @ ( plus_plus_nat @ I2 @ M ) ) ) ).

% less_add_Suc1
thf(fact_574_less__natE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ~ ! [Q3: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M @ Q3 ) ) ) ) ).

% less_natE
thf(fact_575_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_576_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_577_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N2: nat] : ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_578_linorder__neqE__nat,axiom,
    ! [X: nat,Y2: nat] :
      ( ( X != Y2 )
     => ( ~ ( ord_less_nat @ X @ Y2 )
       => ( ord_less_nat @ Y2 @ X ) ) ) ).

% linorder_neqE_nat
thf(fact_579_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N4: nat] :
          ( ~ ( P @ N4 )
         => ? [M3: nat] :
              ( ( ord_less_nat @ M3 @ N4 )
              & ~ ( P @ M3 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_580_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N4: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_nat @ M3 @ N4 )
             => ( P @ M3 ) )
         => ( P @ N4 ) )
     => ( P @ N ) ) ).

% nat_less_induct
thf(fact_581_less__irrefl__nat,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_irrefl_nat
thf(fact_582_less__not__refl3,axiom,
    ! [S: nat,T: nat] :
      ( ( ord_less_nat @ S @ T )
     => ( S != T ) ) ).

% less_not_refl3
thf(fact_583_less__not__refl2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( M != N ) ) ).

% less_not_refl2
thf(fact_584_less__not__refl,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_not_refl
thf(fact_585_nat__neq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( M != N )
      = ( ( ord_less_nat @ M @ N )
        | ( ord_less_nat @ N @ M ) ) ) ).

% nat_neq_iff
thf(fact_586_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y3: nat] :
            ( ( P @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ? [X5: nat] :
            ( ( P @ X5 )
            & ! [Y: nat] :
                ( ( P @ Y )
               => ( ord_less_eq_nat @ Y @ X5 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_587_nat__le__linear,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
      | ( ord_less_eq_nat @ N @ M ) ) ).

% nat_le_linear
thf(fact_588_le__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( M = N ) ) ) ).

% le_antisym
thf(fact_589_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_590_le__trans,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I2 @ K ) ) ) ).

% le_trans
thf(fact_591_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_592_Suc__nat__number__of__add,axiom,
    ! [V: num,N: nat] :
      ( ( suc @ ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ one ) ) @ N ) ) ).

% Suc_nat_number_of_add
thf(fact_593_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I2: nat,J: nat] :
      ( ! [I3: nat,J2: nat] :
          ( ( ord_less_nat @ I3 @ J2 )
         => ( ord_less_nat @ ( F @ I3 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I2 @ J )
       => ( ord_less_eq_nat @ ( F @ I2 ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_594_le__neq__implies__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( M != N )
       => ( ord_less_nat @ M @ N ) ) ) ).

% le_neq_implies_less
thf(fact_595_less__or__eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_nat @ M @ N )
        | ( M = N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_or_eq_imp_le
thf(fact_596_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M6: nat,N2: nat] :
          ( ( ord_less_nat @ M6 @ N2 )
          | ( M6 = N2 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_597_less__imp__le__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_imp_le_nat
thf(fact_598_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M6: nat,N2: nat] :
          ( ( ord_less_eq_nat @ M6 @ N2 )
          & ( M6 != N2 ) ) ) ) ).

% nat_less_le
thf(fact_599_less__add__eq__less,axiom,
    ! [K: nat,L2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ K @ L2 )
     => ( ( ( plus_plus_nat @ M @ L2 )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% less_add_eq_less
thf(fact_600_trans__less__add2,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ord_less_nat @ I2 @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_less_add2
thf(fact_601_trans__less__add1,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ord_less_nat @ I2 @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_602_add__less__mono1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_603_not__add__less2,axiom,
    ! [J: nat,I2: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I2 ) @ I2 ) ).

% not_add_less2
thf(fact_604_not__add__less1,axiom,
    ! [I2: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I2 @ J ) @ I2 ) ).

% not_add_less1
thf(fact_605_add__less__mono,axiom,
    ! [I2: nat,J: nat,K: nat,L2: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( ord_less_nat @ K @ L2 )
       => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ) ).

% add_less_mono
thf(fact_606_add__lessD1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I2 @ J ) @ K )
     => ( ord_less_nat @ I2 @ K ) ) ).

% add_lessD1
thf(fact_607_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M6: nat,N2: nat] :
        ? [K3: nat] :
          ( N2
          = ( plus_plus_nat @ M6 @ K3 ) ) ) ) ).

% nat_le_iff_add
thf(fact_608_trans__le__add2,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ I2 @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_le_add2
thf(fact_609_trans__le__add1,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ I2 @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_le_add1
thf(fact_610_add__le__mono1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_le_mono1
thf(fact_611_add__le__mono,axiom,
    ! [I2: nat,J: nat,K: nat,L2: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_eq_nat @ K @ L2 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ) ).

% add_le_mono
thf(fact_612_le__Suc__ex,axiom,
    ! [K: nat,L2: nat] :
      ( ( ord_less_eq_nat @ K @ L2 )
     => ? [N4: nat] :
          ( L2
          = ( plus_plus_nat @ K @ N4 ) ) ) ).

% le_Suc_ex
thf(fact_613_add__leD2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_614_add__leD1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% add_leD1
thf(fact_615_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

% le_add2
thf(fact_616_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1
thf(fact_617_add__leE,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_618_nat__add__max__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( plus_plus_nat @ M @ ( ord_max_nat @ N @ Q2 ) )
      = ( ord_max_nat @ ( plus_plus_nat @ M @ N ) @ ( plus_plus_nat @ M @ Q2 ) ) ) ).

% nat_add_max_right
thf(fact_619_nat__add__max__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( plus_plus_nat @ ( ord_max_nat @ M @ N ) @ Q2 )
      = ( ord_max_nat @ ( plus_plus_nat @ M @ Q2 ) @ ( plus_plus_nat @ N @ Q2 ) ) ) ).

% nat_add_max_left
thf(fact_620_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M5: nat,N4: nat] :
          ( ( ord_less_nat @ M5 @ N4 )
         => ( ord_less_nat @ ( F @ M5 ) @ ( F @ N4 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_621_add__self__div__2,axiom,
    ! [M: nat] :
      ( ( divide_divide_nat @ ( plus_plus_nat @ M @ M ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = M ) ).

% add_self_div_2
thf(fact_622_div2__Suc__Suc,axiom,
    ! [M: nat] :
      ( ( divide_divide_nat @ ( suc @ ( suc @ M ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( suc @ ( divide_divide_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% div2_Suc_Suc
thf(fact_623_both__member__options__ding,axiom,
    ! [Info: option4927543243414619207at_nat,Deg: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,N: nat,X: nat] :
      ( ( vEBT_invar_vebt @ ( vEBT_Node @ Info @ Deg @ TreeList2 @ Summary ) @ N )
     => ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg ) )
       => ( ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
         => ( vEBT_V8194947554948674370ptions @ ( vEBT_Node @ Info @ Deg @ TreeList2 @ Summary ) @ X ) ) ) ) ).

% both_member_options_ding
thf(fact_624_div__nat__eqI,axiom,
    ! [N: nat,Q2: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ N @ Q2 ) @ M )
     => ( ( ord_less_nat @ M @ ( times_times_nat @ N @ ( suc @ Q2 ) ) )
       => ( ( divide_divide_nat @ M @ N )
          = Q2 ) ) ) ).

% div_nat_eqI
thf(fact_625_enat__ord__number_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_le2932123472753598470d_enat @ ( numera1916890842035813515d_enat @ M ) @ ( numera1916890842035813515d_enat @ N ) )
      = ( ord_less_eq_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) ) ) ).

% enat_ord_number(1)
thf(fact_626_enat__ord__number_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_le72135733267957522d_enat @ ( numera1916890842035813515d_enat @ M ) @ ( numera1916890842035813515d_enat @ N ) )
      = ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) ) ) ).

% enat_ord_number(2)
thf(fact_627_double__not__eq__Suc__double,axiom,
    ! [M: nat,N: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M )
     != ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% double_not_eq_Suc_double
thf(fact_628_deg__deg__n,axiom,
    ! [Info: option4927543243414619207at_nat,Deg: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ ( vEBT_Node @ Info @ Deg @ TreeList2 @ Summary ) @ N )
     => ( Deg = N ) ) ).

% deg_deg_n
thf(fact_629_deg__SUcn__Node,axiom,
    ! [Tree: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ Tree @ ( suc @ ( suc @ N ) ) )
     => ? [Info2: option4927543243414619207at_nat,TreeList3: list_VEBT_VEBT,S2: vEBT_VEBT] :
          ( Tree
          = ( vEBT_Node @ Info2 @ ( suc @ ( suc @ N ) ) @ TreeList3 @ S2 ) ) ) ).

% deg_SUcn_Node
thf(fact_630_semiring__norm_I13_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( bit0 @ ( bit0 @ ( times_times_num @ M @ N ) ) ) ) ).

% semiring_norm(13)
thf(fact_631_semiring__norm_I12_J,axiom,
    ! [N: num] :
      ( ( times_times_num @ one @ N )
      = N ) ).

% semiring_norm(12)
thf(fact_632_semiring__norm_I11_J,axiom,
    ! [M: num] :
      ( ( times_times_num @ M @ one )
      = M ) ).

% semiring_norm(11)
thf(fact_633_set__vebt__set__vebt_H__valid,axiom,
    ! [T: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( vEBT_set_vebt @ T )
        = ( vEBT_VEBT_set_vebt @ T ) ) ) ).

% set_vebt_set_vebt'_valid
thf(fact_634_num__double,axiom,
    ! [N: num] :
      ( ( times_times_num @ ( bit0 @ one ) @ N )
      = ( bit0 @ N ) ) ).

% num_double
thf(fact_635_enat__less__induct,axiom,
    ! [P: extended_enat > $o,N: extended_enat] :
      ( ! [N4: extended_enat] :
          ( ! [M3: extended_enat] :
              ( ( ord_le72135733267957522d_enat @ M3 @ N4 )
             => ( P @ M3 ) )
         => ( P @ N4 ) )
     => ( P @ N ) ) ).

% enat_less_induct
thf(fact_636_four__x__squared,axiom,
    ! [X: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( power_power_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% four_x_squared
thf(fact_637_L2__set__mult__ineq__lemma,axiom,
    ! [A: real,C: real,B: real,D: real] : ( ord_less_eq_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( times_times_real @ A @ C ) ) @ ( times_times_real @ B @ D ) ) @ ( plus_plus_real @ ( times_times_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ D @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_real @ ( power_power_real @ B @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ C @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% L2_set_mult_ineq_lemma
thf(fact_638_two__realpow__ge__one,axiom,
    ! [N: nat] : ( ord_less_eq_real @ one_one_real @ ( power_power_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ N ) ) ).

% two_realpow_ge_one
thf(fact_639_div__le__mono,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( divide_divide_nat @ M @ K ) @ ( divide_divide_nat @ N @ K ) ) ) ).

% div_le_mono
thf(fact_640_div__le__dividend,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( divide_divide_nat @ M @ N ) @ M ) ).

% div_le_dividend
thf(fact_641_div__mult2__eq,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( divide_divide_nat @ M @ ( times_times_nat @ N @ Q2 ) )
      = ( divide_divide_nat @ ( divide_divide_nat @ M @ N ) @ Q2 ) ) ).

% div_mult2_eq
thf(fact_642_Suc__div__le__mono,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( divide_divide_nat @ M @ N ) @ ( divide_divide_nat @ ( suc @ M ) @ N ) ) ).

% Suc_div_le_mono
thf(fact_643_less__mult__imp__div__less,axiom,
    ! [M: nat,I2: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( times_times_nat @ I2 @ N ) )
     => ( ord_less_nat @ ( divide_divide_nat @ M @ N ) @ I2 ) ) ).

% less_mult_imp_div_less
thf(fact_644_div__times__less__eq__dividend,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( times_times_nat @ ( divide_divide_nat @ M @ N ) @ N ) @ M ) ).

% div_times_less_eq_dividend
thf(fact_645_times__div__less__eq__dividend,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ ( times_times_nat @ N @ ( divide_divide_nat @ M @ N ) ) @ M ) ).

% times_div_less_eq_dividend
thf(fact_646_Suc__double__not__eq__double,axiom,
    ! [M: nat,N: nat] :
      ( ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
     != ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% Suc_double_not_eq_double
thf(fact_647_real__divide__square__eq,axiom,
    ! [R2: real,A: real] :
      ( ( divide_divide_real @ ( times_times_real @ R2 @ A ) @ ( times_times_real @ R2 @ R2 ) )
      = ( divide_divide_real @ A @ R2 ) ) ).

% real_divide_square_eq
thf(fact_648_less__eq__real__def,axiom,
    ( ord_less_eq_real
    = ( ^ [X4: real,Y4: real] :
          ( ( ord_less_real @ X4 @ Y4 )
          | ( X4 = Y4 ) ) ) ) ).

% less_eq_real_def
thf(fact_649_complete__real,axiom,
    ! [S3: set_real] :
      ( ? [X3: real] : ( member_real @ X3 @ S3 )
     => ( ? [Z4: real] :
          ! [X5: real] :
            ( ( member_real @ X5 @ S3 )
           => ( ord_less_eq_real @ X5 @ Z4 ) )
       => ? [Y3: real] :
            ( ! [X3: real] :
                ( ( member_real @ X3 @ S3 )
               => ( ord_less_eq_real @ X3 @ Y3 ) )
            & ! [Z4: real] :
                ( ! [X5: real] :
                    ( ( member_real @ X5 @ S3 )
                   => ( ord_less_eq_real @ X5 @ Z4 ) )
               => ( ord_less_eq_real @ Y3 @ Z4 ) ) ) ) ) ).

% complete_real
thf(fact_650_real__arch__pow,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ? [N4: nat] : ( ord_less_real @ Y2 @ ( power_power_real @ X @ N4 ) ) ) ).

% real_arch_pow
thf(fact_651_low__def,axiom,
    ( vEBT_VEBT_low
    = ( ^ [X4: nat,N2: nat] : ( modulo_modulo_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% low_def
thf(fact_652_both__member__options__from__chilf__to__complete__tree,axiom,
    ! [X: nat,Deg: nat,TreeList2: list_VEBT_VEBT,Mi: nat,Ma: nat,Summary: vEBT_VEBT] :
      ( ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
     => ( ( ord_less_eq_nat @ one_one_nat @ Deg )
       => ( ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
         => ( vEBT_V8194947554948674370ptions @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ X ) ) ) ) ).

% both_member_options_from_chilf_to_complete_tree
thf(fact_653_VEBT_Oinject_I1_J,axiom,
    ! [X11: option4927543243414619207at_nat,X12: nat,X13: list_VEBT_VEBT,X14: vEBT_VEBT,Y11: option4927543243414619207at_nat,Y12: nat,Y13: list_VEBT_VEBT,Y14: vEBT_VEBT] :
      ( ( ( vEBT_Node @ X11 @ X12 @ X13 @ X14 )
        = ( vEBT_Node @ Y11 @ Y12 @ Y13 @ Y14 ) )
      = ( ( X11 = Y11 )
        & ( X12 = Y12 )
        & ( X13 = Y13 )
        & ( X14 = Y14 ) ) ) ).

% VEBT.inject(1)
thf(fact_654_member__inv,axiom,
    ! [Mi: nat,Ma: nat,Deg: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,X: nat] :
      ( ( vEBT_vebt_member @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ X )
     => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg )
        & ( ( X = Mi )
          | ( X = Ma )
          | ( ( ord_less_nat @ X @ Ma )
            & ( ord_less_nat @ Mi @ X )
            & ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
            & ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% member_inv
thf(fact_655__C10_C,axiom,
    ( ( vEBT_vebt_insert @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ mi @ ma ) ) @ deg @ treeList @ summary ) @ xa )
    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ mi @ ( ord_max_nat @ xa @ ma ) ) ) @ deg @ ( list_u1324408373059187874T_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) @ ( vEBT_VEBT_low @ xa @ na ) ) ) @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) ) @ ( vEBT_vebt_insert @ summary @ ( vEBT_VEBT_high @ xa @ na ) ) @ summary ) ) ) ).

% "10"
thf(fact_656_valid__tree__deg__neq__0,axiom,
    ! [T: vEBT_VEBT] :
      ~ ( vEBT_invar_vebt @ T @ zero_zero_nat ) ).

% valid_tree_deg_neq_0
thf(fact_657_valid__0__not,axiom,
    ! [T: vEBT_VEBT] :
      ~ ( vEBT_invar_vebt @ T @ zero_zero_nat ) ).

% valid_0_not
thf(fact_658_deg__not__0,axiom,
    ! [T: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% deg_not_0
thf(fact_659_zdiv__numeral__Bit0,axiom,
    ! [V: num,W: num] :
      ( ( divide_divide_int @ ( numeral_numeral_int @ ( bit0 @ V ) ) @ ( numeral_numeral_int @ ( bit0 @ W ) ) )
      = ( divide_divide_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ W ) ) ) ).

% zdiv_numeral_Bit0
thf(fact_660_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_661_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% neq0_conv
thf(fact_662_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_663_bot__nat__0_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).

% bot_nat_0.extremum
thf(fact_664_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% le0
thf(fact_665_add__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_666_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_667_mult__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ( times_times_nat @ M @ K )
        = ( times_times_nat @ N @ K ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel2
thf(fact_668_mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel1
thf(fact_669_mult__0__right,axiom,
    ! [M: nat] :
      ( ( times_times_nat @ M @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_0_right
thf(fact_670_mult__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        | ( N = zero_zero_nat ) ) ) ).

% mult_is_0
thf(fact_671_max__nat_Oeq__neutr__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_max_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% max_nat.eq_neutr_iff
thf(fact_672_max__nat_Oleft__neutral,axiom,
    ! [A: nat] :
      ( ( ord_max_nat @ zero_zero_nat @ A )
      = A ) ).

% max_nat.left_neutral
thf(fact_673_max__nat_Oneutr__eq__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( zero_zero_nat
        = ( ord_max_nat @ A @ B ) )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% max_nat.neutr_eq_iff
thf(fact_674_max__nat_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( ord_max_nat @ A @ zero_zero_nat )
      = A ) ).

% max_nat.right_neutral
thf(fact_675_max__0L,axiom,
    ! [N: nat] :
      ( ( ord_max_nat @ zero_zero_nat @ N )
      = N ) ).

% max_0L
thf(fact_676_max__0R,axiom,
    ! [N: nat] :
      ( ( ord_max_nat @ N @ zero_zero_nat )
      = N ) ).

% max_0R
thf(fact_677_i0__less,axiom,
    ! [N: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ zero_z5237406670263579293d_enat @ N )
      = ( N != zero_z5237406670263579293d_enat ) ) ).

% i0_less
thf(fact_678_mi__eq__ma__no__ch,axiom,
    ! [Mi: nat,Ma: nat,Deg: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT] :
      ( ( vEBT_invar_vebt @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ Deg )
     => ( ( Mi = Ma )
       => ( ! [X3: vEBT_VEBT] :
              ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
             => ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ X3 @ X_1 ) )
          & ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ Summary @ X_1 ) ) ) ) ).

% mi_eq_ma_no_ch
thf(fact_679_half__nonnegative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% half_nonnegative_int_iff
thf(fact_680_half__negative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% half_negative_int_iff
thf(fact_681_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_682_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_683_insert__simp__mima,axiom,
    ! [X: nat,Mi: nat,Ma: nat,Deg: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT] :
      ( ( ( X = Mi )
        | ( X = Ma ) )
     => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg )
       => ( ( vEBT_vebt_insert @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ X )
          = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) ) ) ) ).

% insert_simp_mima
thf(fact_684_add__gr__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_685_one__eq__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( times_times_nat @ M @ N ) )
      = ( ( M
          = ( suc @ zero_zero_nat ) )
        & ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% one_eq_mult_iff
thf(fact_686_mult__eq__1__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( M
          = ( suc @ zero_zero_nat ) )
        & ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% mult_eq_1_iff
thf(fact_687_nat__mult__less__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel_disj
thf(fact_688_mult__less__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% mult_less_cancel2
thf(fact_689_nat__0__less__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% nat_0_less_mult_iff
thf(fact_690_not__real__square__gt__zero,axiom,
    ! [X: real] :
      ( ( ~ ( ord_less_real @ zero_zero_real @ ( times_times_real @ X @ X ) ) )
      = ( X = zero_zero_real ) ) ).

% not_real_square_gt_zero
thf(fact_691_div__by__Suc__0,axiom,
    ! [M: nat] :
      ( ( divide_divide_nat @ M @ ( suc @ zero_zero_nat ) )
      = M ) ).

% div_by_Suc_0
thf(fact_692_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_693_div__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( divide_divide_nat @ M @ N )
        = zero_zero_nat ) ) ).

% div_less
thf(fact_694_nat__power__eq__Suc__0__iff,axiom,
    ! [X: nat,M: nat] :
      ( ( ( power_power_nat @ X @ M )
        = ( suc @ zero_zero_nat ) )
      = ( ( M = zero_zero_nat )
        | ( X
          = ( suc @ zero_zero_nat ) ) ) ) ).

% nat_power_eq_Suc_0_iff
thf(fact_695_power__Suc__0,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( suc @ zero_zero_nat ) ) ).

% power_Suc_0
thf(fact_696_nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ X @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% nat_zero_less_power_iff
thf(fact_697_mod__by__Suc__0,axiom,
    ! [M: nat] :
      ( ( modulo_modulo_nat @ M @ ( suc @ zero_zero_nat ) )
      = zero_zero_nat ) ).

% mod_by_Suc_0
thf(fact_698_nat__mult__div__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( K = zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
          = zero_zero_nat ) )
      & ( ( K != zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
          = ( divide_divide_nat @ M @ N ) ) ) ) ).

% nat_mult_div_cancel_disj
thf(fact_699_mod__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( modulo_modulo_nat @ M @ N )
        = M ) ) ).

% mod_less
thf(fact_700_mi__ma__2__deg,axiom,
    ! [Mi: nat,Ma: nat,Deg: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ N )
     => ( ( ord_less_eq_nat @ Mi @ Ma )
        & ( ord_less_nat @ Ma @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg ) ) ) ) ).

% mi_ma_2_deg
thf(fact_701_one__le__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ M )
        & ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ N ) ) ) ).

% one_le_mult_iff
thf(fact_702_nat__mult__le__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel_disj
thf(fact_703_mult__le__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% mult_le_cancel2
thf(fact_704_div__mult__self__is__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( divide_divide_nat @ ( times_times_nat @ M @ N ) @ N )
        = M ) ) ).

% div_mult_self_is_m
thf(fact_705_div__mult__self1__is__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( divide_divide_nat @ ( times_times_nat @ N @ M ) @ N )
        = M ) ) ).

% div_mult_self1_is_m
thf(fact_706_both__member__options__from__complete__tree__to__child,axiom,
    ! [Deg: nat,Mi: nat,Ma: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,X: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ Deg )
     => ( ( vEBT_V8194947554948674370ptions @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ X )
       => ( ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
          | ( X = Mi )
          | ( X = Ma ) ) ) ) ).

% both_member_options_from_complete_tree_to_child
thf(fact_707_Suc__mod__mult__self1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ M @ ( times_times_nat @ K @ N ) ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self1
thf(fact_708_Suc__mod__mult__self2,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ M @ ( times_times_nat @ N @ K ) ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self2
thf(fact_709_Suc__mod__mult__self3,axiom,
    ! [K: nat,N: nat,M: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ ( times_times_nat @ K @ N ) @ M ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self3
thf(fact_710_Suc__mod__mult__self4,axiom,
    ! [N: nat,K: nat,M: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ ( times_times_nat @ N @ K ) @ M ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self4
thf(fact_711_insert__simp__excp,axiom,
    ! [Mi: nat,Deg: nat,TreeList2: list_VEBT_VEBT,X: nat,Ma: nat,Summary: vEBT_VEBT] :
      ( ( ord_less_nat @ ( vEBT_VEBT_high @ Mi @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
     => ( ( ord_less_nat @ X @ Mi )
       => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg )
         => ( ( X != Ma )
           => ( ( vEBT_vebt_insert @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ X )
              = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ X @ ( ord_max_nat @ Mi @ Ma ) ) ) @ Deg @ ( list_u1324408373059187874T_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ Mi @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ Mi @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Mi @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ Mi @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( vEBT_vebt_insert @ Summary @ ( vEBT_VEBT_high @ Mi @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ Summary ) ) ) ) ) ) ) ).

% insert_simp_excp
thf(fact_712_insert__simp__norm,axiom,
    ! [X: nat,Deg: nat,TreeList2: list_VEBT_VEBT,Mi: nat,Ma: nat,Summary: vEBT_VEBT] :
      ( ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
     => ( ( ord_less_nat @ Mi @ X )
       => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg )
         => ( ( X != Ma )
           => ( ( vEBT_vebt_insert @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ X )
              = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ ( ord_max_nat @ X @ Ma ) ) ) @ Deg @ ( list_u1324408373059187874T_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( vEBT_vebt_insert @ Summary @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ Summary ) ) ) ) ) ) ) ).

% insert_simp_norm
thf(fact_713_not__mod2__eq__Suc__0__eq__0,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
       != ( suc @ zero_zero_nat ) )
      = ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_nat ) ) ).

% not_mod2_eq_Suc_0_eq_0
thf(fact_714_mod2__Suc__Suc,axiom,
    ! [M: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ M ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% mod2_Suc_Suc
thf(fact_715_add__self__mod__2,axiom,
    ! [M: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ M @ M ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = zero_zero_nat ) ).

% add_self_mod_2
thf(fact_716_Suc__times__numeral__mod__eq,axiom,
    ! [K: num,N: nat] :
      ( ( ( numeral_numeral_nat @ K )
       != one_one_nat )
     => ( ( modulo_modulo_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ K ) @ N ) ) @ ( numeral_numeral_nat @ K ) )
        = one_one_nat ) ) ).

% Suc_times_numeral_mod_eq
thf(fact_717_mod2__gr__0,axiom,
    ! [M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_nat ) ) ).

% mod2_gr_0
thf(fact_718_mod__eq__0D,axiom,
    ! [M: nat,D: nat] :
      ( ( ( modulo_modulo_nat @ M @ D )
        = zero_zero_nat )
     => ? [Q3: nat] :
          ( M
          = ( times_times_nat @ D @ Q3 ) ) ) ).

% mod_eq_0D
thf(fact_719_mod__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ( suc @ ( modulo_modulo_nat @ M @ N ) )
          = N )
       => ( ( modulo_modulo_nat @ ( suc @ M ) @ N )
          = zero_zero_nat ) )
      & ( ( ( suc @ ( modulo_modulo_nat @ M @ N ) )
         != N )
       => ( ( modulo_modulo_nat @ ( suc @ M ) @ N )
          = ( suc @ ( modulo_modulo_nat @ M @ N ) ) ) ) ) ).

% mod_Suc
thf(fact_720_mod__less__divisor,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( modulo_modulo_nat @ M @ N ) @ N ) ) ).

% mod_less_divisor
thf(fact_721_vebt__buildup_Ocases,axiom,
    ! [X: nat] :
      ( ( X != zero_zero_nat )
     => ( ( X
         != ( suc @ zero_zero_nat ) )
       => ~ ! [Va: nat] :
              ( X
             != ( suc @ ( suc @ Va ) ) ) ) ) ).

% vebt_buildup.cases
thf(fact_722_mod__le__divisor,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_eq_nat @ ( modulo_modulo_nat @ M @ N ) @ N ) ) ).

% mod_le_divisor
thf(fact_723_realpow__pos__nth,axiom,
    ! [N: nat,A: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ? [R3: real] :
            ( ( ord_less_real @ zero_zero_real @ R3 )
            & ( ( power_power_real @ R3 @ N )
              = A ) ) ) ) ).

% realpow_pos_nth
thf(fact_724_realpow__pos__nth__unique,axiom,
    ! [N: nat,A: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ? [X5: real] :
            ( ( ord_less_real @ zero_zero_real @ X5 )
            & ( ( power_power_real @ X5 @ N )
              = A )
            & ! [Y: real] :
                ( ( ( ord_less_real @ zero_zero_real @ Y )
                  & ( ( power_power_real @ Y @ N )
                    = A ) )
               => ( Y = X5 ) ) ) ) ) ).

% realpow_pos_nth_unique
thf(fact_725_mod__Suc__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ ( modulo_modulo_nat @ M @ N ) ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ ( suc @ M ) ) @ N ) ) ).

% mod_Suc_Suc_eq
thf(fact_726_mod__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( modulo_modulo_nat @ M @ N ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% mod_Suc_eq
thf(fact_727_mod__less__eq__dividend,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( modulo_modulo_nat @ M @ N ) @ M ) ).

% mod_less_eq_dividend
thf(fact_728_num_Osize_I4_J,axiom,
    ( ( size_size_num @ one )
    = zero_zero_nat ) ).

% num.size(4)
thf(fact_729_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M5: nat] :
          ( N
          = ( suc @ M5 ) ) ) ).

% not0_implies_Suc
thf(fact_730_Zero__not__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_not_Suc
thf(fact_731_Zero__neq__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_neq_Suc
thf(fact_732_Suc__neq__Zero,axiom,
    ! [M: nat] :
      ( ( suc @ M )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_733_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N4: nat] :
            ( ( P @ ( suc @ N4 ) )
           => ( P @ N4 ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_734_diff__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [X5: nat] : ( P @ X5 @ zero_zero_nat )
     => ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
       => ( ! [X5: nat,Y3: nat] :
              ( ( P @ X5 @ Y3 )
             => ( P @ ( suc @ X5 ) @ ( suc @ Y3 ) ) )
         => ( P @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_735_nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N4: nat] :
            ( ( P @ N4 )
           => ( P @ ( suc @ N4 ) ) )
       => ( P @ N ) ) ) ).

% nat_induct
thf(fact_736_old_Onat_Oexhaust,axiom,
    ! [Y2: nat] :
      ( ( Y2 != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y2
           != ( suc @ Nat3 ) ) ) ).

% old.nat.exhaust
thf(fact_737_nat_OdiscI,axiom,
    ! [Nat: nat,X23: nat] :
      ( ( Nat
        = ( suc @ X23 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_738_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

% old.nat.distinct(1)
thf(fact_739_old_Onat_Odistinct_I2_J,axiom,
    ! [Nat2: nat] :
      ( ( suc @ Nat2 )
     != zero_zero_nat ) ).

% old.nat.distinct(2)
thf(fact_740_nat_Odistinct_I1_J,axiom,
    ! [X23: nat] :
      ( zero_zero_nat
     != ( suc @ X23 ) ) ).

% nat.distinct(1)
thf(fact_741_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_742_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr0I
thf(fact_743_not__gr0,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr0
thf(fact_744_not__less0,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less0
thf(fact_745_less__zeroE,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_zeroE
thf(fact_746_gr__implies__not0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_747_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N4: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N4 )
           => ( ~ ( P @ N4 )
             => ? [M3: nat] :
                  ( ( ord_less_nat @ M3 @ N4 )
                  & ~ ( P @ M3 ) ) ) )
       => ( P @ N ) ) ) ).

% infinite_descent0
thf(fact_748_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_749_bot__nat__0_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_unique
thf(fact_750_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_uniqueI
thf(fact_751_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_752_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_753_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_754_mult__0,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% mult_0
thf(fact_755_nat__mult__eq__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( M = N ) ) ) ).

% nat_mult_eq_cancel_disj
thf(fact_756_nat__mod__eq__iff,axiom,
    ! [X: nat,N: nat,Y2: nat] :
      ( ( ( modulo_modulo_nat @ X @ N )
        = ( modulo_modulo_nat @ Y2 @ N ) )
      = ( ? [Q1: nat,Q22: nat] :
            ( ( plus_plus_nat @ X @ ( times_times_nat @ N @ Q1 ) )
            = ( plus_plus_nat @ Y2 @ ( times_times_nat @ N @ Q22 ) ) ) ) ) ).

% nat_mod_eq_iff
thf(fact_757_neg__zdiv__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( divide_divide_int @ ( plus_plus_int @ B @ one_one_int ) @ A ) ) ) ).

% neg_zdiv_mult_2
thf(fact_758_pos__zdiv__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( divide_divide_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( divide_divide_int @ B @ A ) ) ) ).

% pos_zdiv_mult_2
thf(fact_759_enat__0__less__mult__iff,axiom,
    ! [M: extended_enat,N: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ zero_z5237406670263579293d_enat @ ( times_7803423173614009249d_enat @ M @ N ) )
      = ( ( ord_le72135733267957522d_enat @ zero_z5237406670263579293d_enat @ M )
        & ( ord_le72135733267957522d_enat @ zero_z5237406670263579293d_enat @ N ) ) ) ).

% enat_0_less_mult_iff
thf(fact_760_not__iless0,axiom,
    ! [N: extended_enat] :
      ~ ( ord_le72135733267957522d_enat @ N @ zero_z5237406670263579293d_enat ) ).

% not_iless0
thf(fact_761_split__mod,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( modulo_modulo_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
         => ( P @ M ) )
        & ( ( N != zero_zero_nat )
         => ! [I4: nat,J3: nat] :
              ( ( ord_less_nat @ J3 @ N )
             => ( ( M
                  = ( plus_plus_nat @ ( times_times_nat @ N @ I4 ) @ J3 ) )
               => ( P @ J3 ) ) ) ) ) ) ).

% split_mod
thf(fact_762_ile0__eq,axiom,
    ! [N: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ N @ zero_z5237406670263579293d_enat )
      = ( N = zero_z5237406670263579293d_enat ) ) ).

% ile0_eq
thf(fact_763_i0__lb,axiom,
    ! [N: extended_enat] : ( ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ N ) ).

% i0_lb
thf(fact_764_Suc__times__mod__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
     => ( ( modulo_modulo_nat @ ( suc @ ( times_times_nat @ M @ N ) ) @ M )
        = one_one_nat ) ) ).

% Suc_times_mod_eq
thf(fact_765_mod__induct,axiom,
    ! [P: nat > $o,N: nat,P2: nat,M: nat] :
      ( ( P @ N )
     => ( ( ord_less_nat @ N @ P2 )
       => ( ( ord_less_nat @ M @ P2 )
         => ( ! [N4: nat] :
                ( ( ord_less_nat @ N4 @ P2 )
               => ( ( P @ N4 )
                 => ( P @ ( modulo_modulo_nat @ ( suc @ N4 ) @ P2 ) ) ) )
           => ( P @ M ) ) ) ) ) ).

% mod_induct
thf(fact_766_mod__Suc__le__divisor,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( modulo_modulo_nat @ M @ ( suc @ N ) ) @ N ) ).

% mod_Suc_le_divisor
thf(fact_767_mod__eq__nat1E,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( ( modulo_modulo_nat @ M @ Q2 )
        = ( modulo_modulo_nat @ N @ Q2 ) )
     => ( ( ord_less_eq_nat @ N @ M )
       => ~ ! [S2: nat] :
              ( M
             != ( plus_plus_nat @ N @ ( times_times_nat @ Q2 @ S2 ) ) ) ) ) ).

% mod_eq_nat1E
thf(fact_768_mod__eq__nat2E,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( ( modulo_modulo_nat @ M @ Q2 )
        = ( modulo_modulo_nat @ N @ Q2 ) )
     => ( ( ord_less_eq_nat @ M @ N )
       => ~ ! [S2: nat] :
              ( N
             != ( plus_plus_nat @ M @ ( times_times_nat @ Q2 @ S2 ) ) ) ) ) ).

% mod_eq_nat2E
thf(fact_769_nat__mod__eq__lemma,axiom,
    ! [X: nat,N: nat,Y2: nat] :
      ( ( ( modulo_modulo_nat @ X @ N )
        = ( modulo_modulo_nat @ Y2 @ N ) )
     => ( ( ord_less_eq_nat @ Y2 @ X )
       => ? [Q3: nat] :
            ( X
            = ( plus_plus_nat @ Y2 @ ( times_times_nat @ N @ Q3 ) ) ) ) ) ).

% nat_mod_eq_lemma
thf(fact_770_not__exp__less__eq__0__int,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ zero_zero_int ) ).

% not_exp_less_eq_0_int
thf(fact_771_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P @ I4 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P @ ( suc @ I4 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_772_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M6: nat] :
            ( N
            = ( suc @ M6 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_773_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P @ I4 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P @ ( suc @ I4 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_774_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M5: nat] :
          ( N
          = ( suc @ M5 ) ) ) ).

% gr0_implies_Suc
thf(fact_775_less__Suc__eq__0__disj,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( M = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M
              = ( suc @ J3 ) )
            & ( ord_less_nat @ J3 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_776_add__is__1,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_777_one__is__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M @ N ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_778_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ! [I: nat] :
                ( ( ord_less_nat @ I @ K2 )
               => ~ ( P @ I ) )
            & ( P @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_779_less__imp__add__positive,axiom,
    ! [I2: nat,J: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ? [K2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K2 )
          & ( ( plus_plus_nat @ I2 @ K2 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_780_realpow__pos__nth2,axiom,
    ! [A: real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ? [R3: real] :
          ( ( ord_less_real @ zero_zero_real @ R3 )
          & ( ( power_power_real @ R3 @ ( suc @ N ) )
            = A ) ) ) ).

% realpow_pos_nth2
thf(fact_781_nat__mult__eq__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ( times_times_nat @ K @ M )
          = ( times_times_nat @ K @ N ) )
        = ( M = N ) ) ) ).

% nat_mult_eq_cancel1
thf(fact_782_nat__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel1
thf(fact_783_mult__less__mono1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ I2 @ K ) @ ( times_times_nat @ J @ K ) ) ) ) ).

% mult_less_mono1
thf(fact_784_mult__less__mono2,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ K @ I2 ) @ ( times_times_nat @ K @ J ) ) ) ) ).

% mult_less_mono2
thf(fact_785_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_786_Euclidean__Division_Odiv__eq__0__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( divide_divide_nat @ M @ N )
        = zero_zero_nat )
      = ( ( ord_less_nat @ M @ N )
        | ( N = zero_zero_nat ) ) ) ).

% Euclidean_Division.div_eq_0_iff
thf(fact_787_nat__power__less__imp__less,axiom,
    ! [I2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ I2 )
     => ( ( ord_less_nat @ ( power_power_nat @ I2 @ M ) @ ( power_power_nat @ I2 @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% nat_power_less_imp_less
thf(fact_788_real__arch__pow__inv,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_real @ zero_zero_real @ Y2 )
     => ( ( ord_less_real @ X @ one_one_real )
       => ? [N4: nat] : ( ord_less_real @ ( power_power_real @ X @ N4 ) @ Y2 ) ) ) ).

% real_arch_pow_inv
thf(fact_789_mult__eq__self__implies__10,axiom,
    ! [M: nat,N: nat] :
      ( ( M
        = ( times_times_nat @ M @ N ) )
     => ( ( N = one_one_nat )
        | ( M = zero_zero_nat ) ) ) ).

% mult_eq_self_implies_10
thf(fact_790_pow_Osimps_I1_J,axiom,
    ! [X: num] :
      ( ( pow @ X @ one )
      = X ) ).

% pow.simps(1)
thf(fact_791_mod__mult2__eq,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( modulo_modulo_nat @ M @ ( times_times_nat @ N @ Q2 ) )
      = ( plus_plus_nat @ ( times_times_nat @ N @ ( modulo_modulo_nat @ ( divide_divide_nat @ M @ N ) @ Q2 ) ) @ ( modulo_modulo_nat @ M @ N ) ) ) ).

% mod_mult2_eq
thf(fact_792_bounded__Max__nat,axiom,
    ! [P: nat > $o,X: nat,M7: nat] :
      ( ( P @ X )
     => ( ! [X5: nat] :
            ( ( P @ X5 )
           => ( ord_less_eq_nat @ X5 @ M7 ) )
       => ~ ! [M5: nat] :
              ( ( P @ M5 )
             => ~ ! [X3: nat] :
                    ( ( P @ X3 )
                   => ( ord_less_eq_nat @ X3 @ M5 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_793_numeral__1__eq__Suc__0,axiom,
    ( ( numeral_numeral_nat @ one )
    = ( suc @ zero_zero_nat ) ) ).

% numeral_1_eq_Suc_0
thf(fact_794_num_Osize_I5_J,axiom,
    ! [X23: num] :
      ( ( size_size_num @ ( bit0 @ X23 ) )
      = ( plus_plus_nat @ ( size_size_num @ X23 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(5)
thf(fact_795_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I: nat] :
                ( ( ord_less_eq_nat @ I @ K2 )
               => ~ ( P @ I ) )
            & ( P @ ( suc @ K2 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_796_one__less__mult,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ ( suc @ zero_zero_nat ) @ ( times_times_nat @ M @ N ) ) ) ) ).

% one_less_mult
thf(fact_797_n__less__m__mult__n,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ N @ ( times_times_nat @ M @ N ) ) ) ) ).

% n_less_m_mult_n
thf(fact_798_n__less__n__mult__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ N @ ( times_times_nat @ N @ M ) ) ) ) ).

% n_less_n_mult_m
thf(fact_799_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N4: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N4 )
             => ( ( P @ N4 )
               => ( P @ ( suc @ N4 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_800_nat__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel1
thf(fact_801_power__gt__expt,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ K @ ( power_power_nat @ N @ K ) ) ) ).

% power_gt_expt
thf(fact_802_div__le__mono2,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ord_less_eq_nat @ ( divide_divide_nat @ K @ N ) @ ( divide_divide_nat @ K @ M ) ) ) ) ).

% div_le_mono2
thf(fact_803_div__greater__zero__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ N @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% div_greater_zero_iff
thf(fact_804_nat__one__le__power,axiom,
    ! [I2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ I2 )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( power_power_nat @ I2 @ N ) ) ) ).

% nat_one_le_power
thf(fact_805_div__less__iff__less__mult,axiom,
    ! [Q2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Q2 )
     => ( ( ord_less_nat @ ( divide_divide_nat @ M @ Q2 ) @ N )
        = ( ord_less_nat @ M @ ( times_times_nat @ N @ Q2 ) ) ) ) ).

% div_less_iff_less_mult
thf(fact_806_nat__mult__div__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( divide_divide_nat @ M @ N ) ) ) ).

% nat_mult_div_cancel1
thf(fact_807_div__less__dividend,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ one_one_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( divide_divide_nat @ M @ N ) @ M ) ) ) ).

% div_less_dividend
thf(fact_808_div__eq__dividend__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ( divide_divide_nat @ M @ N )
          = M )
        = ( N = one_one_nat ) ) ) ).

% div_eq_dividend_iff
thf(fact_809_numeral__2__eq__2,axiom,
    ( ( numeral_numeral_nat @ ( bit0 @ one ) )
    = ( suc @ ( suc @ zero_zero_nat ) ) ) ).

% numeral_2_eq_2
thf(fact_810_pos2,axiom,
    ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ).

% pos2
thf(fact_811_less__eq__div__iff__mult__less__eq,axiom,
    ! [Q2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Q2 )
     => ( ( ord_less_eq_nat @ M @ ( divide_divide_nat @ N @ Q2 ) )
        = ( ord_less_eq_nat @ ( times_times_nat @ M @ Q2 ) @ N ) ) ) ).

% less_eq_div_iff_mult_less_eq
thf(fact_812_split__div,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( divide_divide_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
         => ( P @ zero_zero_nat ) )
        & ( ( N != zero_zero_nat )
         => ! [I4: nat,J3: nat] :
              ( ( ord_less_nat @ J3 @ N )
             => ( ( M
                  = ( plus_plus_nat @ ( times_times_nat @ N @ I4 ) @ J3 ) )
               => ( P @ I4 ) ) ) ) ) ) ).

% split_div
thf(fact_813_dividend__less__div__times,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ M @ ( plus_plus_nat @ N @ ( times_times_nat @ ( divide_divide_nat @ M @ N ) @ N ) ) ) ) ).

% dividend_less_div_times
thf(fact_814_dividend__less__times__div,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ M @ ( plus_plus_nat @ N @ ( times_times_nat @ N @ ( divide_divide_nat @ M @ N ) ) ) ) ) ).

% dividend_less_times_div
thf(fact_815_less__2__cases,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
     => ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases
thf(fact_816_less__2__cases__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases_iff
thf(fact_817_nat__induct2,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ( P @ one_one_nat )
       => ( ! [N4: nat] :
              ( ( P @ N4 )
             => ( P @ ( plus_plus_nat @ N4 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct2
thf(fact_818_split__div_H,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( divide_divide_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
          & ( P @ zero_zero_nat ) )
        | ? [Q4: nat] :
            ( ( ord_less_eq_nat @ ( times_times_nat @ N @ Q4 ) @ M )
            & ( ord_less_nat @ M @ ( times_times_nat @ N @ ( suc @ Q4 ) ) )
            & ( P @ Q4 ) ) ) ) ).

% split_div'
thf(fact_819_VEBT__internal_Oexp__split__high__low_I1_J,axiom,
    ! [X: nat,N: nat,M: nat] :
      ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ N @ M ) ) )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ord_less_nat @ zero_zero_nat @ M )
         => ( ord_less_nat @ ( vEBT_VEBT_high @ X @ N ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) ) ) ) ).

% VEBT_internal.exp_split_high_low(1)
thf(fact_820_VEBT__internal_Oexp__split__high__low_I2_J,axiom,
    ! [X: nat,N: nat,M: nat] :
      ( ( ord_less_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ N @ M ) ) )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ord_less_nat @ zero_zero_nat @ M )
         => ( ord_less_nat @ ( vEBT_VEBT_low @ X @ N ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% VEBT_internal.exp_split_high_low(2)
thf(fact_821_invar__vebt_Ointros_I4_J,axiom,
    ! [TreeList2: list_VEBT_VEBT,N: nat,Summary: vEBT_VEBT,M: nat,Deg: nat,Mi: nat,Ma: nat] :
      ( ! [X5: vEBT_VEBT] :
          ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
         => ( vEBT_invar_vebt @ X5 @ N ) )
     => ( ( vEBT_invar_vebt @ Summary @ M )
       => ( ( ( size_s6755466524823107622T_VEBT @ TreeList2 )
            = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
         => ( ( M = N )
           => ( ( Deg
                = ( plus_plus_nat @ N @ M ) )
             => ( ! [I3: nat] :
                    ( ( ord_less_nat @ I3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
                   => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ I3 ) @ X2 ) )
                      = ( vEBT_V8194947554948674370ptions @ Summary @ I3 ) ) )
               => ( ( ( Mi = Ma )
                   => ! [X5: vEBT_VEBT] :
                        ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
                       => ~ ? [X_12: nat] : ( vEBT_V8194947554948674370ptions @ X5 @ X_12 ) ) )
                 => ( ( ord_less_eq_nat @ Mi @ Ma )
                   => ( ( ord_less_nat @ Ma @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg ) )
                     => ( ( ( Mi != Ma )
                         => ! [I3: nat] :
                              ( ( ord_less_nat @ I3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
                             => ( ( ( ( vEBT_VEBT_high @ Ma @ N )
                                    = I3 )
                                 => ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ I3 ) @ ( vEBT_VEBT_low @ Ma @ N ) ) )
                                & ! [X5: nat] :
                                    ( ( ( ( vEBT_VEBT_high @ X5 @ N )
                                        = I3 )
                                      & ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ I3 ) @ ( vEBT_VEBT_low @ X5 @ N ) ) )
                                   => ( ( ord_less_nat @ Mi @ X5 )
                                      & ( ord_less_eq_nat @ X5 @ Ma ) ) ) ) ) )
                       => ( vEBT_invar_vebt @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ Deg ) ) ) ) ) ) ) ) ) ) ) ).

% invar_vebt.intros(4)
thf(fact_822_nat__bit__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N4: nat] :
            ( ( P @ N4 )
           => ( ( ord_less_nat @ zero_zero_nat @ N4 )
             => ( P @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N4 ) ) ) )
       => ( ! [N4: nat] :
              ( ( P @ N4 )
             => ( P @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N4 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_bit_induct
thf(fact_823_div__2__gt__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% div_2_gt_zero
thf(fact_824_Suc__n__div__2__gt__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% Suc_n_div_2_gt_zero
thf(fact_825_invar__vebt_Ointros_I5_J,axiom,
    ! [TreeList2: list_VEBT_VEBT,N: nat,Summary: vEBT_VEBT,M: nat,Deg: nat,Mi: nat,Ma: nat] :
      ( ! [X5: vEBT_VEBT] :
          ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
         => ( vEBT_invar_vebt @ X5 @ N ) )
     => ( ( vEBT_invar_vebt @ Summary @ M )
       => ( ( ( size_s6755466524823107622T_VEBT @ TreeList2 )
            = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
         => ( ( M
              = ( suc @ N ) )
           => ( ( Deg
                = ( plus_plus_nat @ N @ M ) )
             => ( ! [I3: nat] :
                    ( ( ord_less_nat @ I3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
                   => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ I3 ) @ X2 ) )
                      = ( vEBT_V8194947554948674370ptions @ Summary @ I3 ) ) )
               => ( ( ( Mi = Ma )
                   => ! [X5: vEBT_VEBT] :
                        ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
                       => ~ ? [X_12: nat] : ( vEBT_V8194947554948674370ptions @ X5 @ X_12 ) ) )
                 => ( ( ord_less_eq_nat @ Mi @ Ma )
                   => ( ( ord_less_nat @ Ma @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg ) )
                     => ( ( ( Mi != Ma )
                         => ! [I3: nat] :
                              ( ( ord_less_nat @ I3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
                             => ( ( ( ( vEBT_VEBT_high @ Ma @ N )
                                    = I3 )
                                 => ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ I3 ) @ ( vEBT_VEBT_low @ Ma @ N ) ) )
                                & ! [X5: nat] :
                                    ( ( ( ( vEBT_VEBT_high @ X5 @ N )
                                        = I3 )
                                      & ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ I3 ) @ ( vEBT_VEBT_low @ X5 @ N ) ) )
                                   => ( ( ord_less_nat @ Mi @ X5 )
                                      & ( ord_less_eq_nat @ X5 @ Ma ) ) ) ) ) )
                       => ( vEBT_invar_vebt @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ Deg @ TreeList2 @ Summary ) @ Deg ) ) ) ) ) ) ) ) ) ) ) ).

% invar_vebt.intros(5)
thf(fact_826_verit__le__mono__div,axiom,
    ! [A2: nat,B2: nat,N: nat] :
      ( ( ord_less_nat @ A2 @ B2 )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat
          @ ( plus_plus_nat @ ( divide_divide_nat @ A2 @ N )
            @ ( if_nat
              @ ( ( modulo_modulo_nat @ B2 @ N )
                = zero_zero_nat )
              @ one_one_nat
              @ zero_zero_nat ) )
          @ ( divide_divide_nat @ B2 @ N ) ) ) ) ).

% verit_le_mono_div
thf(fact_827_buildup__gives__valid,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( vEBT_invar_vebt @ ( vEBT_vebt_buildup @ N ) @ N ) ) ).

% buildup_gives_valid
thf(fact_828_vebt__member_Osimps_I4_J,axiom,
    ! [V: product_prod_nat_nat,Vb: list_VEBT_VEBT,Vc: vEBT_VEBT,X: nat] :
      ~ ( vEBT_vebt_member @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V ) @ ( suc @ zero_zero_nat ) @ Vb @ Vc ) @ X ) ).

% vebt_member.simps(4)
thf(fact_829_div__mod__decomp,axiom,
    ! [A2: nat,N: nat] :
      ( A2
      = ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A2 @ N ) @ N ) @ ( modulo_modulo_nat @ A2 @ N ) ) ) ).

% div_mod_decomp
thf(fact_830_verit__eq__simplify_I8_J,axiom,
    ! [X23: num,Y23: num] :
      ( ( ( bit0 @ X23 )
        = ( bit0 @ Y23 ) )
      = ( X23 = Y23 ) ) ).

% verit_eq_simplify(8)
thf(fact_831_max__enat__simps_I2_J,axiom,
    ! [Q2: extended_enat] :
      ( ( ord_ma741700101516333627d_enat @ Q2 @ zero_z5237406670263579293d_enat )
      = Q2 ) ).

% max_enat_simps(2)
thf(fact_832_max__enat__simps_I3_J,axiom,
    ! [Q2: extended_enat] :
      ( ( ord_ma741700101516333627d_enat @ zero_z5237406670263579293d_enat @ Q2 )
      = Q2 ) ).

% max_enat_simps(3)
thf(fact_833_unset__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se4203085406695923979it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% unset_bit_nonnegative_int_iff
thf(fact_834_set__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se7879613467334960850it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% set_bit_nonnegative_int_iff
thf(fact_835_flip__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se2159334234014336723it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% flip_bit_nonnegative_int_iff
thf(fact_836_unset__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se4203085406695923979it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% unset_bit_negative_int_iff
thf(fact_837_set__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se7879613467334960850it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% set_bit_negative_int_iff
thf(fact_838_flip__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se2159334234014336723it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% flip_bit_negative_int_iff
thf(fact_839_mod__pos__pos__trivial,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ K @ L2 )
       => ( ( modulo_modulo_int @ K @ L2 )
          = K ) ) ) ).

% mod_pos_pos_trivial
thf(fact_840_mod__neg__neg__trivial,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ K @ zero_zero_int )
     => ( ( ord_less_int @ L2 @ K )
       => ( ( modulo_modulo_int @ K @ L2 )
          = K ) ) ) ).

% mod_neg_neg_trivial
thf(fact_841_zmod__numeral__Bit0,axiom,
    ! [V: num,W: num] :
      ( ( modulo_modulo_int @ ( numeral_numeral_int @ ( bit0 @ V ) ) @ ( numeral_numeral_int @ ( bit0 @ W ) ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( modulo_modulo_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ W ) ) ) ) ).

% zmod_numeral_Bit0
thf(fact_842_zle__add1__eq__le,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ ( plus_plus_int @ Z @ one_one_int ) )
      = ( ord_less_eq_int @ W @ Z ) ) ).

% zle_add1_eq_le
thf(fact_843_div__pos__pos__trivial,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ K @ L2 )
       => ( ( divide_divide_int @ K @ L2 )
          = zero_zero_int ) ) ) ).

% div_pos_pos_trivial
thf(fact_844_div__neg__neg__trivial,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ K @ zero_zero_int )
     => ( ( ord_less_int @ L2 @ K )
       => ( ( divide_divide_int @ K @ L2 )
          = zero_zero_int ) ) ) ).

% div_neg_neg_trivial
thf(fact_845_times__int__code_I2_J,axiom,
    ! [L2: int] :
      ( ( times_times_int @ zero_zero_int @ L2 )
      = zero_zero_int ) ).

% times_int_code(2)
thf(fact_846_times__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( times_times_int @ K @ zero_zero_int )
      = zero_zero_int ) ).

% times_int_code(1)
thf(fact_847_zmod__eq__0D,axiom,
    ! [M: int,D: int] :
      ( ( ( modulo_modulo_int @ M @ D )
        = zero_zero_int )
     => ? [Q3: int] :
          ( M
          = ( times_times_int @ D @ Q3 ) ) ) ).

% zmod_eq_0D
thf(fact_848_zmod__eq__0__iff,axiom,
    ! [M: int,D: int] :
      ( ( ( modulo_modulo_int @ M @ D )
        = zero_zero_int )
      = ( ? [Q4: int] :
            ( M
            = ( times_times_int @ D @ Q4 ) ) ) ) ).

% zmod_eq_0_iff
thf(fact_849_imult__is__0,axiom,
    ! [M: extended_enat,N: extended_enat] :
      ( ( ( times_7803423173614009249d_enat @ M @ N )
        = zero_z5237406670263579293d_enat )
      = ( ( M = zero_z5237406670263579293d_enat )
        | ( N = zero_z5237406670263579293d_enat ) ) ) ).

% imult_is_0
thf(fact_850_mod__pos__neg__trivial,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_int @ ( plus_plus_int @ K @ L2 ) @ zero_zero_int )
       => ( ( modulo_modulo_int @ K @ L2 )
          = ( plus_plus_int @ K @ L2 ) ) ) ) ).

% mod_pos_neg_trivial
thf(fact_851_zmod__zmult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( modulo_modulo_int @ A @ ( times_times_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ B @ ( modulo_modulo_int @ ( divide_divide_int @ A @ B ) @ C ) ) @ ( modulo_modulo_int @ A @ B ) ) ) ) ).

% zmod_zmult2_eq
thf(fact_852_zdiv__zmult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( divide_divide_int @ A @ ( times_times_int @ B @ C ) )
        = ( divide_divide_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ).

% zdiv_zmult2_eq
thf(fact_853_unique__quotient__lemma__neg,axiom,
    ! [B: int,Q5: int,R4: int,Q2: int,R2: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ B @ Q5 ) @ R4 ) @ ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 ) )
     => ( ( ord_less_eq_int @ R2 @ zero_zero_int )
       => ( ( ord_less_int @ B @ R2 )
         => ( ( ord_less_int @ B @ R4 )
           => ( ord_less_eq_int @ Q2 @ Q5 ) ) ) ) ) ).

% unique_quotient_lemma_neg
thf(fact_854_nonneg1__imp__zdiv__pos__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) )
        = ( ( ord_less_eq_int @ B @ A )
          & ( ord_less_int @ zero_zero_int @ B ) ) ) ) ).

% nonneg1_imp_zdiv_pos_iff
thf(fact_855_Euclidean__Division_Opos__mod__sign,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L2 )
     => ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ K @ L2 ) ) ) ).

% Euclidean_Division.pos_mod_sign
thf(fact_856_neg__mod__sign,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_int @ L2 @ zero_zero_int )
     => ( ord_less_eq_int @ ( modulo_modulo_int @ K @ L2 ) @ zero_zero_int ) ) ).

% neg_mod_sign
thf(fact_857_zmod__le__nonneg__dividend,axiom,
    ! [M: int,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ M )
     => ( ord_less_eq_int @ ( modulo_modulo_int @ M @ K ) @ M ) ) ).

% zmod_le_nonneg_dividend
thf(fact_858_pos__imp__zdiv__nonneg__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) )
        = ( ord_less_eq_int @ zero_zero_int @ A ) ) ) ).

% pos_imp_zdiv_nonneg_iff
thf(fact_859_neg__imp__zdiv__nonneg__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ zero_zero_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) )
        = ( ord_less_eq_int @ A @ zero_zero_int ) ) ) ).

% neg_imp_zdiv_nonneg_iff
thf(fact_860_unique__quotient__lemma,axiom,
    ! [B: int,Q5: int,R4: int,Q2: int,R2: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ B @ Q5 ) @ R4 ) @ ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ R4 )
       => ( ( ord_less_int @ R4 @ B )
         => ( ( ord_less_int @ R2 @ B )
           => ( ord_less_eq_int @ Q5 @ Q2 ) ) ) ) ) ).

% unique_quotient_lemma
thf(fact_861_int__one__le__iff__zero__less,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ one_one_int @ Z )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% int_one_le_iff_zero_less
thf(fact_862_zdiv__mono2__neg__lemma,axiom,
    ! [B: int,Q2: int,R2: int,B3: int,Q5: int,R4: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 )
        = ( plus_plus_int @ ( times_times_int @ B3 @ Q5 ) @ R4 ) )
     => ( ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ B3 @ Q5 ) @ R4 ) @ zero_zero_int )
       => ( ( ord_less_int @ R2 @ B )
         => ( ( ord_less_eq_int @ zero_zero_int @ R4 )
           => ( ( ord_less_int @ zero_zero_int @ B3 )
             => ( ( ord_less_eq_int @ B3 @ B )
               => ( ord_less_eq_int @ Q5 @ Q2 ) ) ) ) ) ) ) ).

% zdiv_mono2_neg_lemma
thf(fact_863_pos__imp__zdiv__pos__iff,axiom,
    ! [K: int,I2: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ I2 @ K ) )
        = ( ord_less_eq_int @ K @ I2 ) ) ) ).

% pos_imp_zdiv_pos_iff
thf(fact_864_div__nonpos__pos__le0,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ zero_zero_int ) ) ) ).

% div_nonpos_pos_le0
thf(fact_865_div__nonneg__neg__le0,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ zero_zero_int ) ) ) ).

% div_nonneg_neg_le0
thf(fact_866_verit__le__mono__div__int,axiom,
    ! [A2: int,B2: int,N: int] :
      ( ( ord_less_int @ A2 @ B2 )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_eq_int
          @ ( plus_plus_int @ ( divide_divide_int @ A2 @ N )
            @ ( if_int
              @ ( ( modulo_modulo_int @ B2 @ N )
                = zero_zero_int )
              @ one_one_int
              @ zero_zero_int ) )
          @ ( divide_divide_int @ B2 @ N ) ) ) ) ).

% verit_le_mono_div_int
thf(fact_867_int__div__less__self,axiom,
    ! [X: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ X )
     => ( ( ord_less_int @ one_one_int @ K )
       => ( ord_less_int @ ( divide_divide_int @ X @ K ) @ X ) ) ) ).

% int_div_less_self
thf(fact_868_zmod__trivial__iff,axiom,
    ! [I2: int,K: int] :
      ( ( ( modulo_modulo_int @ I2 @ K )
        = I2 )
      = ( ( K = zero_zero_int )
        | ( ( ord_less_eq_int @ zero_zero_int @ I2 )
          & ( ord_less_int @ I2 @ K ) )
        | ( ( ord_less_eq_int @ I2 @ zero_zero_int )
          & ( ord_less_int @ K @ I2 ) ) ) ) ).

% zmod_trivial_iff
thf(fact_869_zdiv__mono2__lemma,axiom,
    ! [B: int,Q2: int,R2: int,B3: int,Q5: int,R4: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 )
        = ( plus_plus_int @ ( times_times_int @ B3 @ Q5 ) @ R4 ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ B3 @ Q5 ) @ R4 ) )
       => ( ( ord_less_int @ R4 @ B3 )
         => ( ( ord_less_eq_int @ zero_zero_int @ R2 )
           => ( ( ord_less_int @ zero_zero_int @ B3 )
             => ( ( ord_less_eq_int @ B3 @ B )
               => ( ord_less_eq_int @ Q2 @ Q5 ) ) ) ) ) ) ) ).

% zdiv_mono2_lemma
thf(fact_870_div__positive__int,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_eq_int @ L2 @ K )
     => ( ( ord_less_int @ zero_zero_int @ L2 )
       => ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ K @ L2 ) ) ) ) ).

% div_positive_int
thf(fact_871_split__pos__lemma,axiom,
    ! [K: int,P: int > int > $o,N: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( P @ ( divide_divide_int @ N @ K ) @ ( modulo_modulo_int @ N @ K ) )
        = ( ! [I4: int,J3: int] :
              ( ( ( ord_less_eq_int @ zero_zero_int @ J3 )
                & ( ord_less_int @ J3 @ K )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I4 ) @ J3 ) ) )
             => ( P @ I4 @ J3 ) ) ) ) ) ).

% split_pos_lemma
thf(fact_872_split__neg__lemma,axiom,
    ! [K: int,P: int > int > $o,N: int] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ( ( P @ ( divide_divide_int @ N @ K ) @ ( modulo_modulo_int @ N @ K ) )
        = ( ! [I4: int,J3: int] :
              ( ( ( ord_less_int @ K @ J3 )
                & ( ord_less_eq_int @ J3 @ zero_zero_int )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I4 ) @ J3 ) ) )
             => ( P @ I4 @ J3 ) ) ) ) ) ).

% split_neg_lemma
thf(fact_873_div__int__pos__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ K @ L2 ) )
      = ( ( K = zero_zero_int )
        | ( L2 = zero_zero_int )
        | ( ( ord_less_eq_int @ zero_zero_int @ K )
          & ( ord_less_eq_int @ zero_zero_int @ L2 ) )
        | ( ( ord_less_int @ K @ zero_zero_int )
          & ( ord_less_int @ L2 @ zero_zero_int ) ) ) ) ).

% div_int_pos_iff
thf(fact_874_div__mod__decomp__int,axiom,
    ! [A2: int,N: int] :
      ( A2
      = ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A2 @ N ) @ N ) @ ( modulo_modulo_int @ A2 @ N ) ) ) ).

% div_mod_decomp_int
thf(fact_875_zless__imp__add1__zle,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ Z )
     => ( ord_less_eq_int @ ( plus_plus_int @ W @ one_one_int ) @ Z ) ) ).

% zless_imp_add1_zle
thf(fact_876_pos__zmult__eq__1__iff,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ M )
     => ( ( ( times_times_int @ M @ N )
          = one_one_int )
        = ( ( M = one_one_int )
          & ( N = one_one_int ) ) ) ) ).

% pos_zmult_eq_1_iff
thf(fact_877_zdiv__mono2__neg,axiom,
    ! [A: int,B3: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ zero_zero_int @ B3 )
       => ( ( ord_less_eq_int @ B3 @ B )
         => ( ord_less_eq_int @ ( divide_divide_int @ A @ B3 ) @ ( divide_divide_int @ A @ B ) ) ) ) ) ).

% zdiv_mono2_neg
thf(fact_878_zdiv__mono1__neg,axiom,
    ! [A: int,A3: int,B: int] :
      ( ( ord_less_eq_int @ A @ A3 )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( divide_divide_int @ A3 @ B ) @ ( divide_divide_int @ A @ B ) ) ) ) ).

% zdiv_mono1_neg
thf(fact_879_int__mod__pos__eq,axiom,
    ! [A: int,B: int,Q2: int,R2: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ R2 )
       => ( ( ord_less_int @ R2 @ B )
         => ( ( modulo_modulo_int @ A @ B )
            = R2 ) ) ) ) ).

% int_mod_pos_eq
thf(fact_880_int__mod__neg__eq,axiom,
    ! [A: int,B: int,Q2: int,R2: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 ) )
     => ( ( ord_less_eq_int @ R2 @ zero_zero_int )
       => ( ( ord_less_int @ B @ R2 )
         => ( ( modulo_modulo_int @ A @ B )
            = R2 ) ) ) ) ).

% int_mod_neg_eq
thf(fact_881_int__div__pos__eq,axiom,
    ! [A: int,B: int,Q2: int,R2: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ R2 )
       => ( ( ord_less_int @ R2 @ B )
         => ( ( divide_divide_int @ A @ B )
            = Q2 ) ) ) ) ).

% int_div_pos_eq
thf(fact_882_int__div__neg__eq,axiom,
    ! [A: int,B: int,Q2: int,R2: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R2 ) )
     => ( ( ord_less_eq_int @ R2 @ zero_zero_int )
       => ( ( ord_less_int @ B @ R2 )
         => ( ( divide_divide_int @ A @ B )
            = Q2 ) ) ) ) ).

% int_div_neg_eq
thf(fact_883_zmult__zless__mono2,axiom,
    ! [I2: int,J: int,K: int] :
      ( ( ord_less_int @ I2 @ J )
     => ( ( ord_less_int @ zero_zero_int @ K )
       => ( ord_less_int @ ( times_times_int @ K @ I2 ) @ ( times_times_int @ K @ J ) ) ) ) ).

% zmult_zless_mono2
thf(fact_884_zdiv__eq__0__iff,axiom,
    ! [I2: int,K: int] :
      ( ( ( divide_divide_int @ I2 @ K )
        = zero_zero_int )
      = ( ( K = zero_zero_int )
        | ( ( ord_less_eq_int @ zero_zero_int @ I2 )
          & ( ord_less_int @ I2 @ K ) )
        | ( ( ord_less_eq_int @ I2 @ zero_zero_int )
          & ( ord_less_int @ K @ I2 ) ) ) ) ).

% zdiv_eq_0_iff
thf(fact_885_pos__mod__conj,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ A @ B ) )
        & ( ord_less_int @ ( modulo_modulo_int @ A @ B ) @ B ) ) ) ).

% pos_mod_conj
thf(fact_886_neg__mod__conj,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ zero_zero_int )
     => ( ( ord_less_eq_int @ ( modulo_modulo_int @ A @ B ) @ zero_zero_int )
        & ( ord_less_int @ B @ ( modulo_modulo_int @ A @ B ) ) ) ) ).

% neg_mod_conj
thf(fact_887_q__pos__lemma,axiom,
    ! [B3: int,Q5: int,R4: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ B3 @ Q5 ) @ R4 ) )
     => ( ( ord_less_int @ R4 @ B3 )
       => ( ( ord_less_int @ zero_zero_int @ B3 )
         => ( ord_less_eq_int @ zero_zero_int @ Q5 ) ) ) ) ).

% q_pos_lemma
thf(fact_888_zdiv__mono2,axiom,
    ! [A: int,B3: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B3 )
       => ( ( ord_less_eq_int @ B3 @ B )
         => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ ( divide_divide_int @ A @ B3 ) ) ) ) ) ).

% zdiv_mono2
thf(fact_889_zdiv__mono1,axiom,
    ! [A: int,A3: int,B: int] :
      ( ( ord_less_eq_int @ A @ A3 )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ ( divide_divide_int @ A3 @ B ) ) ) ) ).

% zdiv_mono1
thf(fact_890_split__zmod,axiom,
    ! [P: int > $o,N: int,K: int] :
      ( ( P @ ( modulo_modulo_int @ N @ K ) )
      = ( ( ( K = zero_zero_int )
         => ( P @ N ) )
        & ( ( ord_less_int @ zero_zero_int @ K )
         => ! [I4: int,J3: int] :
              ( ( ( ord_less_eq_int @ zero_zero_int @ J3 )
                & ( ord_less_int @ J3 @ K )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I4 ) @ J3 ) ) )
             => ( P @ J3 ) ) )
        & ( ( ord_less_int @ K @ zero_zero_int )
         => ! [I4: int,J3: int] :
              ( ( ( ord_less_int @ K @ J3 )
                & ( ord_less_eq_int @ J3 @ zero_zero_int )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I4 ) @ J3 ) ) )
             => ( P @ J3 ) ) ) ) ) ).

% split_zmod
thf(fact_891_split__zdiv,axiom,
    ! [P: int > $o,N: int,K: int] :
      ( ( P @ ( divide_divide_int @ N @ K ) )
      = ( ( ( K = zero_zero_int )
         => ( P @ zero_zero_int ) )
        & ( ( ord_less_int @ zero_zero_int @ K )
         => ! [I4: int,J3: int] :
              ( ( ( ord_less_eq_int @ zero_zero_int @ J3 )
                & ( ord_less_int @ J3 @ K )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I4 ) @ J3 ) ) )
             => ( P @ I4 ) ) )
        & ( ( ord_less_int @ K @ zero_zero_int )
         => ! [I4: int,J3: int] :
              ( ( ( ord_less_int @ K @ J3 )
                & ( ord_less_eq_int @ J3 @ zero_zero_int )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I4 ) @ J3 ) ) )
             => ( P @ I4 ) ) ) ) ) ).

% split_zdiv
thf(fact_892_le__imp__0__less,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ Z ) ) ) ).

% le_imp_0_less
thf(fact_893_add1__zle__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ W @ one_one_int ) @ Z )
      = ( ord_less_int @ W @ Z ) ) ).

% add1_zle_eq
thf(fact_894_less__eq__int__code_I1_J,axiom,
    ord_less_eq_int @ zero_zero_int @ zero_zero_int ).

% less_eq_int_code(1)
thf(fact_895_zero__one__enat__neq_I1_J,axiom,
    zero_z5237406670263579293d_enat != one_on7984719198319812577d_enat ).

% zero_one_enat_neq(1)
thf(fact_896_int__gr__induct,axiom,
    ! [K: int,I2: int,P: int > $o] :
      ( ( ord_less_int @ K @ I2 )
     => ( ( P @ ( plus_plus_int @ K @ one_one_int ) )
       => ( ! [I3: int] :
              ( ( ord_less_int @ K @ I3 )
             => ( ( P @ I3 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I2 ) ) ) ) ).

% int_gr_induct
thf(fact_897_zless__add1__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ ( plus_plus_int @ Z @ one_one_int ) )
      = ( ( ord_less_int @ W @ Z )
        | ( W = Z ) ) ) ).

% zless_add1_eq
thf(fact_898_odd__less__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( plus_plus_int @ one_one_int @ Z ) @ Z ) @ zero_zero_int )
      = ( ord_less_int @ Z @ zero_zero_int ) ) ).

% odd_less_0_iff
thf(fact_899_iadd__is__0,axiom,
    ! [M: extended_enat,N: extended_enat] :
      ( ( ( plus_p3455044024723400733d_enat @ M @ N )
        = zero_z5237406670263579293d_enat )
      = ( ( M = zero_z5237406670263579293d_enat )
        & ( N = zero_z5237406670263579293d_enat ) ) ) ).

% iadd_is_0
thf(fact_900_odd__nonzero,axiom,
    ! [Z: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ one_one_int @ Z ) @ Z )
     != zero_zero_int ) ).

% odd_nonzero
thf(fact_901_plus__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( plus_plus_int @ K @ zero_zero_int )
      = K ) ).

% plus_int_code(1)
thf(fact_902_plus__int__code_I2_J,axiom,
    ! [L2: int] :
      ( ( plus_plus_int @ zero_zero_int @ L2 )
      = L2 ) ).

% plus_int_code(2)
thf(fact_903_Euclidean__Division_Opos__mod__bound,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L2 )
     => ( ord_less_int @ ( modulo_modulo_int @ K @ L2 ) @ L2 ) ) ).

% Euclidean_Division.pos_mod_bound
thf(fact_904_neg__mod__bound,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_int @ L2 @ zero_zero_int )
     => ( ord_less_int @ L2 @ ( modulo_modulo_int @ K @ L2 ) ) ) ).

% neg_mod_bound
thf(fact_905_int__distrib_I2_J,axiom,
    ! [W: int,Z12: int,Z22: int] :
      ( ( times_times_int @ W @ ( plus_plus_int @ Z12 @ Z22 ) )
      = ( plus_plus_int @ ( times_times_int @ W @ Z12 ) @ ( times_times_int @ W @ Z22 ) ) ) ).

% int_distrib(2)
thf(fact_906_int__distrib_I1_J,axiom,
    ! [Z12: int,Z22: int,W: int] :
      ( ( times_times_int @ ( plus_plus_int @ Z12 @ Z22 ) @ W )
      = ( plus_plus_int @ ( times_times_int @ Z12 @ W ) @ ( times_times_int @ Z22 @ W ) ) ) ).

% int_distrib(1)
thf(fact_907_int__ge__induct,axiom,
    ! [K: int,I2: int,P: int > $o] :
      ( ( ord_less_eq_int @ K @ I2 )
     => ( ( P @ K )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ K @ I3 )
             => ( ( P @ I3 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I2 ) ) ) ) ).

% int_ge_induct
thf(fact_908_verit__la__generic,axiom,
    ! [A: int,X: int] :
      ( ( ord_less_eq_int @ A @ X )
      | ( A = X )
      | ( ord_less_eq_int @ X @ A ) ) ).

% verit_la_generic
thf(fact_909_unset__bit__less__eq,axiom,
    ! [N: nat,K: int] : ( ord_less_eq_int @ ( bit_se4203085406695923979it_int @ N @ K ) @ K ) ).

% unset_bit_less_eq
thf(fact_910_set__bit__greater__eq,axiom,
    ! [K: int,N: nat] : ( ord_less_eq_int @ K @ ( bit_se7879613467334960850it_int @ N @ K ) ) ).

% set_bit_greater_eq
thf(fact_911_pos__zmod__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( modulo_modulo_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( modulo_modulo_int @ B @ A ) ) ) ) ) ).

% pos_zmod_mult_2
thf(fact_912_verit__eq__simplify_I10_J,axiom,
    ! [X23: num] :
      ( one
     != ( bit0 @ X23 ) ) ).

% verit_eq_simplify(10)
thf(fact_913_div__less__mono,axiom,
    ! [A2: nat,B2: nat,N: nat] :
      ( ( ord_less_nat @ A2 @ B2 )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ( modulo_modulo_nat @ A2 @ N )
            = zero_zero_nat )
         => ( ( ( modulo_modulo_nat @ B2 @ N )
              = zero_zero_nat )
           => ( ord_less_nat @ ( divide_divide_nat @ A2 @ N ) @ ( divide_divide_nat @ B2 @ N ) ) ) ) ) ) ).

% div_less_mono
thf(fact_914_vebt__member_Osimps_I3_J,axiom,
    ! [V: product_prod_nat_nat,Uy: list_VEBT_VEBT,Uz: vEBT_VEBT,X: nat] :
      ~ ( vEBT_vebt_member @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V ) @ zero_zero_nat @ Uy @ Uz ) @ X ) ).

% vebt_member.simps(3)
thf(fact_915_VEBT__internal_OminNull_Osimps_I5_J,axiom,
    ! [Uz: product_prod_nat_nat,Va2: nat,Vb: list_VEBT_VEBT,Vc: vEBT_VEBT] :
      ~ ( vEBT_VEBT_minNull @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz ) @ Va2 @ Vb @ Vc ) ) ).

% VEBT_internal.minNull.simps(5)
thf(fact_916_incr__mult__lemma,axiom,
    ! [D: int,P: int > $o,K: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X5: int] :
            ( ( P @ X5 )
           => ( P @ ( plus_plus_int @ X5 @ D ) ) )
       => ( ( ord_less_eq_int @ zero_zero_int @ K )
         => ! [X3: int] :
              ( ( P @ X3 )
             => ( P @ ( plus_plus_int @ X3 @ ( times_times_int @ K @ D ) ) ) ) ) ) ) ).

% incr_mult_lemma
thf(fact_917_vebt__insert_Osimps_I3_J,axiom,
    ! [Info: option4927543243414619207at_nat,Ts: list_VEBT_VEBT,S: vEBT_VEBT,X: nat] :
      ( ( vEBT_vebt_insert @ ( vEBT_Node @ Info @ ( suc @ zero_zero_nat ) @ Ts @ S ) @ X )
      = ( vEBT_Node @ Info @ ( suc @ zero_zero_nat ) @ Ts @ S ) ) ).

% vebt_insert.simps(3)
thf(fact_918_buildup__nothing__in__leaf,axiom,
    ! [N: nat,X: nat] :
      ~ ( vEBT_V5719532721284313246member @ ( vEBT_vebt_buildup @ N ) @ X ) ).

% buildup_nothing_in_leaf
thf(fact_919_invar__vebt_Ointros_I3_J,axiom,
    ! [TreeList2: list_VEBT_VEBT,N: nat,Summary: vEBT_VEBT,M: nat,Deg: nat] :
      ( ! [X5: vEBT_VEBT] :
          ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
         => ( vEBT_invar_vebt @ X5 @ N ) )
     => ( ( vEBT_invar_vebt @ Summary @ M )
       => ( ( ( size_s6755466524823107622T_VEBT @ TreeList2 )
            = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
         => ( ( M
              = ( suc @ N ) )
           => ( ( Deg
                = ( plus_plus_nat @ N @ M ) )
             => ( ~ ? [X_12: nat] : ( vEBT_V8194947554948674370ptions @ Summary @ X_12 )
               => ( ! [X5: vEBT_VEBT] :
                      ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
                     => ~ ? [X_12: nat] : ( vEBT_V8194947554948674370ptions @ X5 @ X_12 ) )
                 => ( vEBT_invar_vebt @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Deg @ TreeList2 @ Summary ) @ Deg ) ) ) ) ) ) ) ) ).

% invar_vebt.intros(3)
thf(fact_920_vebt__insert_Osimps_I2_J,axiom,
    ! [Info: option4927543243414619207at_nat,Ts: list_VEBT_VEBT,S: vEBT_VEBT,X: nat] :
      ( ( vEBT_vebt_insert @ ( vEBT_Node @ Info @ zero_zero_nat @ Ts @ S ) @ X )
      = ( vEBT_Node @ Info @ zero_zero_nat @ Ts @ S ) ) ).

% vebt_insert.simps(2)
thf(fact_921_Leaf__0__not,axiom,
    ! [A: $o,B: $o] :
      ~ ( vEBT_invar_vebt @ ( vEBT_Leaf @ A @ B ) @ zero_zero_nat ) ).

% Leaf_0_not
thf(fact_922_deg1Leaf,axiom,
    ! [T: vEBT_VEBT] :
      ( ( vEBT_invar_vebt @ T @ one_one_nat )
      = ( ? [A4: $o,B4: $o] :
            ( T
            = ( vEBT_Leaf @ A4 @ B4 ) ) ) ) ).

% deg1Leaf
thf(fact_923_deg__1__Leaf,axiom,
    ! [T: vEBT_VEBT] :
      ( ( vEBT_invar_vebt @ T @ one_one_nat )
     => ? [A5: $o,B5: $o] :
          ( T
          = ( vEBT_Leaf @ A5 @ B5 ) ) ) ).

% deg_1_Leaf
thf(fact_924_deg__1__Leafy,axiom,
    ! [T: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ( N = one_one_nat )
       => ? [A5: $o,B5: $o] :
            ( T
            = ( vEBT_Leaf @ A5 @ B5 ) ) ) ) ).

% deg_1_Leafy
thf(fact_925_VEBT__internal_Ovalid_H_Ocases,axiom,
    ! [X: produc9072475918466114483BT_nat] :
      ( ! [Uu: $o,Uv: $o,D3: nat] :
          ( X
         != ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ Uu @ Uv ) @ D3 ) )
     => ~ ! [Mima: option4927543243414619207at_nat,Deg2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT,Deg3: nat] :
            ( X
           != ( produc738532404422230701BT_nat @ ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) @ Deg3 ) ) ) ).

% VEBT_internal.valid'.cases
thf(fact_926_VEBT__internal_OminNull_Ocases,axiom,
    ! [X: vEBT_VEBT] :
      ( ( X
       != ( vEBT_Leaf @ $false @ $false ) )
     => ( ! [Uv: $o] :
            ( X
           != ( vEBT_Leaf @ $true @ Uv ) )
       => ( ! [Uu: $o] :
              ( X
             != ( vEBT_Leaf @ Uu @ $true ) )
         => ( ! [Uw: nat,Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
                ( X
               != ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw @ Ux @ Uy2 ) )
           => ~ ! [Uz2: product_prod_nat_nat,Va3: nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                  ( X
                 != ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz2 ) @ Va3 @ Vb2 @ Vc2 ) ) ) ) ) ) ).

% VEBT_internal.minNull.cases
thf(fact_927_VEBT__internal_OminNull_Oelims_I2_J,axiom,
    ! [X: vEBT_VEBT] :
      ( ( vEBT_VEBT_minNull @ X )
     => ( ( X
         != ( vEBT_Leaf @ $false @ $false ) )
       => ~ ! [Uw: nat,Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
              ( X
             != ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw @ Ux @ Uy2 ) ) ) ) ).

% VEBT_internal.minNull.elims(2)
thf(fact_928_VEBT_Oexhaust,axiom,
    ! [Y2: vEBT_VEBT] :
      ( ! [X112: option4927543243414619207at_nat,X122: nat,X132: list_VEBT_VEBT,X142: vEBT_VEBT] :
          ( Y2
         != ( vEBT_Node @ X112 @ X122 @ X132 @ X142 ) )
     => ~ ! [X212: $o,X222: $o] :
            ( Y2
           != ( vEBT_Leaf @ X212 @ X222 ) ) ) ).

% VEBT.exhaust
thf(fact_929_VEBT_Odistinct_I1_J,axiom,
    ! [X11: option4927543243414619207at_nat,X12: nat,X13: list_VEBT_VEBT,X14: vEBT_VEBT,X21: $o,X22: $o] :
      ( ( vEBT_Node @ X11 @ X12 @ X13 @ X14 )
     != ( vEBT_Leaf @ X21 @ X22 ) ) ).

% VEBT.distinct(1)
thf(fact_930_VEBT__internal_Onaive__member_Osimps_I1_J,axiom,
    ! [A: $o,B: $o,X: nat] :
      ( ( vEBT_V5719532721284313246member @ ( vEBT_Leaf @ A @ B ) @ X )
      = ( ( ( X = zero_zero_nat )
         => A )
        & ( ( X != zero_zero_nat )
         => ( ( ( X = one_one_nat )
             => B )
            & ( X = one_one_nat ) ) ) ) ) ).

% VEBT_internal.naive_member.simps(1)
thf(fact_931_VEBT__internal_OminNull_Osimps_I1_J,axiom,
    vEBT_VEBT_minNull @ ( vEBT_Leaf @ $false @ $false ) ).

% VEBT_internal.minNull.simps(1)
thf(fact_932_VEBT__internal_OminNull_Osimps_I2_J,axiom,
    ! [Uv2: $o] :
      ~ ( vEBT_VEBT_minNull @ ( vEBT_Leaf @ $true @ Uv2 ) ) ).

% VEBT_internal.minNull.simps(2)
thf(fact_933_VEBT__internal_OminNull_Osimps_I3_J,axiom,
    ! [Uu2: $o] :
      ~ ( vEBT_VEBT_minNull @ ( vEBT_Leaf @ Uu2 @ $true ) ) ).

% VEBT_internal.minNull.simps(3)
thf(fact_934_vebt__insert_Ocases,axiom,
    ! [X: produc9072475918466114483BT_nat] :
      ( ! [A5: $o,B5: $o,X5: nat] :
          ( X
         != ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ X5 ) )
     => ( ! [Info2: option4927543243414619207at_nat,Ts2: list_VEBT_VEBT,S2: vEBT_VEBT,X5: nat] :
            ( X
           != ( produc738532404422230701BT_nat @ ( vEBT_Node @ Info2 @ zero_zero_nat @ Ts2 @ S2 ) @ X5 ) )
       => ( ! [Info2: option4927543243414619207at_nat,Ts2: list_VEBT_VEBT,S2: vEBT_VEBT,X5: nat] :
              ( X
             != ( produc738532404422230701BT_nat @ ( vEBT_Node @ Info2 @ ( suc @ zero_zero_nat ) @ Ts2 @ S2 ) @ X5 ) )
         => ( ! [V2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT,X5: nat] :
                ( X
               != ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ V2 ) ) @ TreeList3 @ Summary2 ) @ X5 ) )
           => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT,X5: nat] :
                  ( X
                 != ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) @ X5 ) ) ) ) ) ) ).

% vebt_insert.cases
thf(fact_935_VEBT__internal_Onaive__member_Ocases,axiom,
    ! [X: produc9072475918466114483BT_nat] :
      ( ! [A5: $o,B5: $o,X5: nat] :
          ( X
         != ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ X5 ) )
     => ( ! [Uu: option4927543243414619207at_nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT,Ux: nat] :
            ( X
           != ( produc738532404422230701BT_nat @ ( vEBT_Node @ Uu @ zero_zero_nat @ Uv @ Uw ) @ Ux ) )
       => ~ ! [Uy2: option4927543243414619207at_nat,V2: nat,TreeList3: list_VEBT_VEBT,S2: vEBT_VEBT,X5: nat] :
              ( X
             != ( produc738532404422230701BT_nat @ ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) @ X5 ) ) ) ) ).

% VEBT_internal.naive_member.cases
thf(fact_936_VEBT__internal_Omembermima_Ocases,axiom,
    ! [X: produc9072475918466114483BT_nat] :
      ( ! [Uu: $o,Uv: $o,Uw: nat] :
          ( X
         != ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ Uu @ Uv ) @ Uw ) )
     => ( ! [Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT,Uz2: nat] :
            ( X
           != ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux @ Uy2 ) @ Uz2 ) )
       => ( ! [Mi2: nat,Ma2: nat,Va3: list_VEBT_VEBT,Vb2: vEBT_VEBT,X5: nat] :
              ( X
             != ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) @ X5 ) )
         => ( ! [Mi2: nat,Ma2: nat,V2: nat,TreeList3: list_VEBT_VEBT,Vc2: vEBT_VEBT,X5: nat] :
                ( X
               != ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) @ X5 ) )
           => ~ ! [V2: nat,TreeList3: list_VEBT_VEBT,Vd: vEBT_VEBT,X5: nat] :
                  ( X
                 != ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) @ X5 ) ) ) ) ) ) ).

% VEBT_internal.membermima.cases
thf(fact_937_vebt__member_Ocases,axiom,
    ! [X: produc9072475918466114483BT_nat] :
      ( ! [A5: $o,B5: $o,X5: nat] :
          ( X
         != ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ X5 ) )
     => ( ! [Uu: nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT,X5: nat] :
            ( X
           != ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu @ Uv @ Uw ) @ X5 ) )
       => ( ! [V2: product_prod_nat_nat,Uy2: list_VEBT_VEBT,Uz2: vEBT_VEBT,X5: nat] :
              ( X
             != ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ zero_zero_nat @ Uy2 @ Uz2 ) @ X5 ) )
         => ( ! [V2: product_prod_nat_nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT,X5: nat] :
                ( X
               != ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ ( suc @ zero_zero_nat ) @ Vb2 @ Vc2 ) @ X5 ) )
           => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT,X5: nat] :
                  ( X
                 != ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) @ X5 ) ) ) ) ) ) ).

% vebt_member.cases
thf(fact_938_VEBT__internal_OminNull_Oelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Y2: $o] :
      ( ( ( vEBT_VEBT_minNull @ X )
        = Y2 )
     => ( ( ( X
            = ( vEBT_Leaf @ $false @ $false ) )
         => ~ Y2 )
       => ( ( ? [Uv: $o] :
                ( X
                = ( vEBT_Leaf @ $true @ Uv ) )
           => Y2 )
         => ( ( ? [Uu: $o] :
                  ( X
                  = ( vEBT_Leaf @ Uu @ $true ) )
             => Y2 )
           => ( ( ? [Uw: nat,Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
                    ( X
                    = ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw @ Ux @ Uy2 ) )
               => ~ Y2 )
             => ~ ( ? [Uz2: product_prod_nat_nat,Va3: nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                      ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz2 ) @ Va3 @ Vb2 @ Vc2 ) )
                 => Y2 ) ) ) ) ) ) ).

% VEBT_internal.minNull.elims(1)
thf(fact_939_vebt__insert_Osimps_I1_J,axiom,
    ! [X: nat,A: $o,B: $o] :
      ( ( ( X = zero_zero_nat )
       => ( ( vEBT_vebt_insert @ ( vEBT_Leaf @ A @ B ) @ X )
          = ( vEBT_Leaf @ $true @ B ) ) )
      & ( ( X != zero_zero_nat )
       => ( ( ( X = one_one_nat )
           => ( ( vEBT_vebt_insert @ ( vEBT_Leaf @ A @ B ) @ X )
              = ( vEBT_Leaf @ A @ $true ) ) )
          & ( ( X != one_one_nat )
           => ( ( vEBT_vebt_insert @ ( vEBT_Leaf @ A @ B ) @ X )
              = ( vEBT_Leaf @ A @ B ) ) ) ) ) ) ).

% vebt_insert.simps(1)
thf(fact_940_vebt__member_Osimps_I2_J,axiom,
    ! [Uu2: nat,Uv2: list_VEBT_VEBT,Uw2: vEBT_VEBT,X: nat] :
      ~ ( vEBT_vebt_member @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu2 @ Uv2 @ Uw2 ) @ X ) ).

% vebt_member.simps(2)
thf(fact_941_VEBT__internal_OminNull_Osimps_I4_J,axiom,
    ! [Uw2: nat,Ux2: list_VEBT_VEBT,Uy: vEBT_VEBT] : ( vEBT_VEBT_minNull @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw2 @ Ux2 @ Uy ) ) ).

% VEBT_internal.minNull.simps(4)
thf(fact_942_invar__vebt_Ointros_I1_J,axiom,
    ! [A: $o,B: $o] : ( vEBT_invar_vebt @ ( vEBT_Leaf @ A @ B ) @ ( suc @ zero_zero_nat ) ) ).

% invar_vebt.intros(1)
thf(fact_943_vebt__buildup_Osimps_I2_J,axiom,
    ( ( vEBT_vebt_buildup @ ( suc @ zero_zero_nat ) )
    = ( vEBT_Leaf @ $false @ $false ) ) ).

% vebt_buildup.simps(2)
thf(fact_944_vebt__member_Osimps_I1_J,axiom,
    ! [A: $o,B: $o,X: nat] :
      ( ( vEBT_vebt_member @ ( vEBT_Leaf @ A @ B ) @ X )
      = ( ( ( X = zero_zero_nat )
         => A )
        & ( ( X != zero_zero_nat )
         => ( ( ( X = one_one_nat )
             => B )
            & ( X = one_one_nat ) ) ) ) ) ).

% vebt_member.simps(1)
thf(fact_945_VEBT__internal_Onaive__member_Osimps_I2_J,axiom,
    ! [Uu2: option4927543243414619207at_nat,Uv2: list_VEBT_VEBT,Uw2: vEBT_VEBT,Ux2: nat] :
      ~ ( vEBT_V5719532721284313246member @ ( vEBT_Node @ Uu2 @ zero_zero_nat @ Uv2 @ Uw2 ) @ Ux2 ) ).

% VEBT_internal.naive_member.simps(2)
thf(fact_946_VEBT__internal_OminNull_Oelims_I3_J,axiom,
    ! [X: vEBT_VEBT] :
      ( ~ ( vEBT_VEBT_minNull @ X )
     => ( ! [Uv: $o] :
            ( X
           != ( vEBT_Leaf @ $true @ Uv ) )
       => ( ! [Uu: $o] :
              ( X
             != ( vEBT_Leaf @ Uu @ $true ) )
         => ~ ! [Uz2: product_prod_nat_nat,Va3: nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                ( X
               != ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz2 ) @ Va3 @ Vb2 @ Vc2 ) ) ) ) ) ).

% VEBT_internal.minNull.elims(3)
thf(fact_947_vebt__insert_Osimps_I4_J,axiom,
    ! [V: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,X: nat] :
      ( ( vEBT_vebt_insert @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ V ) ) @ TreeList2 @ Summary ) @ X )
      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ X @ X ) ) @ ( suc @ ( suc @ V ) ) @ TreeList2 @ Summary ) ) ).

% vebt_insert.simps(4)
thf(fact_948_imp__le__cong,axiom,
    ! [X: int,X6: int,P: $o,P3: $o] :
      ( ( X = X6 )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X6 )
         => ( P = P3 ) )
       => ( ( ( ord_less_eq_int @ zero_zero_int @ X )
           => P )
          = ( ( ord_less_eq_int @ zero_zero_int @ X6 )
           => P3 ) ) ) ) ).

% imp_le_cong
thf(fact_949_conj__le__cong,axiom,
    ! [X: int,X6: int,P: $o,P3: $o] :
      ( ( X = X6 )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X6 )
         => ( P = P3 ) )
       => ( ( ( ord_less_eq_int @ zero_zero_int @ X )
            & P )
          = ( ( ord_less_eq_int @ zero_zero_int @ X6 )
            & P3 ) ) ) ) ).

% conj_le_cong
thf(fact_950_invar__vebt_Ocases,axiom,
    ! [A1: vEBT_VEBT,A22: nat] :
      ( ( vEBT_invar_vebt @ A1 @ A22 )
     => ( ( ? [A5: $o,B5: $o] :
              ( A1
              = ( vEBT_Leaf @ A5 @ B5 ) )
         => ( A22
           != ( suc @ zero_zero_nat ) ) )
       => ( ! [TreeList3: list_VEBT_VEBT,N4: nat,Summary2: vEBT_VEBT,M5: nat,Deg2: nat] :
              ( ( A1
                = ( vEBT_Node @ none_P5556105721700978146at_nat @ Deg2 @ TreeList3 @ Summary2 ) )
             => ( ( A22 = Deg2 )
               => ( ! [X3: vEBT_VEBT] :
                      ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                     => ( vEBT_invar_vebt @ X3 @ N4 ) )
                 => ( ( vEBT_invar_vebt @ Summary2 @ M5 )
                   => ( ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                        = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                     => ( ( M5 = N4 )
                       => ( ( Deg2
                            = ( plus_plus_nat @ N4 @ M5 ) )
                         => ( ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X_1 )
                           => ~ ! [X3: vEBT_VEBT] :
                                  ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                 => ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ X3 @ X_1 ) ) ) ) ) ) ) ) ) )
         => ( ! [TreeList3: list_VEBT_VEBT,N4: nat,Summary2: vEBT_VEBT,M5: nat,Deg2: nat] :
                ( ( A1
                  = ( vEBT_Node @ none_P5556105721700978146at_nat @ Deg2 @ TreeList3 @ Summary2 ) )
               => ( ( A22 = Deg2 )
                 => ( ! [X3: vEBT_VEBT] :
                        ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                       => ( vEBT_invar_vebt @ X3 @ N4 ) )
                   => ( ( vEBT_invar_vebt @ Summary2 @ M5 )
                     => ( ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                          = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                       => ( ( M5
                            = ( suc @ N4 ) )
                         => ( ( Deg2
                              = ( plus_plus_nat @ N4 @ M5 ) )
                           => ( ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X_1 )
                             => ~ ! [X3: vEBT_VEBT] :
                                    ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                   => ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ X3 @ X_1 ) ) ) ) ) ) ) ) ) )
           => ( ! [TreeList3: list_VEBT_VEBT,N4: nat,Summary2: vEBT_VEBT,M5: nat,Deg2: nat,Mi2: nat,Ma2: nat] :
                  ( ( A1
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ Deg2 @ TreeList3 @ Summary2 ) )
                 => ( ( A22 = Deg2 )
                   => ( ! [X3: vEBT_VEBT] :
                          ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                         => ( vEBT_invar_vebt @ X3 @ N4 ) )
                     => ( ( vEBT_invar_vebt @ Summary2 @ M5 )
                       => ( ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                            = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                         => ( ( M5 = N4 )
                           => ( ( Deg2
                                = ( plus_plus_nat @ N4 @ M5 ) )
                             => ( ! [I: nat] :
                                    ( ( ord_less_nat @ I @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                                   => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I ) @ X2 ) )
                                      = ( vEBT_V8194947554948674370ptions @ Summary2 @ I ) ) )
                               => ( ( ( Mi2 = Ma2 )
                                   => ! [X3: vEBT_VEBT] :
                                        ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                       => ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ X3 @ X_1 ) ) )
                                 => ( ( ord_less_eq_nat @ Mi2 @ Ma2 )
                                   => ( ( ord_less_nat @ Ma2 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                                     => ~ ( ( Mi2 != Ma2 )
                                         => ! [I: nat] :
                                              ( ( ord_less_nat @ I @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                                             => ( ( ( ( vEBT_VEBT_high @ Ma2 @ N4 )
                                                    = I )
                                                 => ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I ) @ ( vEBT_VEBT_low @ Ma2 @ N4 ) ) )
                                                & ! [X3: nat] :
                                                    ( ( ( ( vEBT_VEBT_high @ X3 @ N4 )
                                                        = I )
                                                      & ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I ) @ ( vEBT_VEBT_low @ X3 @ N4 ) ) )
                                                   => ( ( ord_less_nat @ Mi2 @ X3 )
                                                      & ( ord_less_eq_nat @ X3 @ Ma2 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
             => ~ ! [TreeList3: list_VEBT_VEBT,N4: nat,Summary2: vEBT_VEBT,M5: nat,Deg2: nat,Mi2: nat,Ma2: nat] :
                    ( ( A1
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ Deg2 @ TreeList3 @ Summary2 ) )
                   => ( ( A22 = Deg2 )
                     => ( ! [X3: vEBT_VEBT] :
                            ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                           => ( vEBT_invar_vebt @ X3 @ N4 ) )
                       => ( ( vEBT_invar_vebt @ Summary2 @ M5 )
                         => ( ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                              = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                           => ( ( M5
                                = ( suc @ N4 ) )
                             => ( ( Deg2
                                  = ( plus_plus_nat @ N4 @ M5 ) )
                               => ( ! [I: nat] :
                                      ( ( ord_less_nat @ I @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                                     => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I ) @ X2 ) )
                                        = ( vEBT_V8194947554948674370ptions @ Summary2 @ I ) ) )
                                 => ( ( ( Mi2 = Ma2 )
                                     => ! [X3: vEBT_VEBT] :
                                          ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                         => ~ ? [X_1: nat] : ( vEBT_V8194947554948674370ptions @ X3 @ X_1 ) ) )
                                   => ( ( ord_less_eq_nat @ Mi2 @ Ma2 )
                                     => ( ( ord_less_nat @ Ma2 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                                       => ~ ( ( Mi2 != Ma2 )
                                           => ! [I: nat] :
                                                ( ( ord_less_nat @ I @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
                                               => ( ( ( ( vEBT_VEBT_high @ Ma2 @ N4 )
                                                      = I )
                                                   => ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I ) @ ( vEBT_VEBT_low @ Ma2 @ N4 ) ) )
                                                  & ! [X3: nat] :
                                                      ( ( ( ( vEBT_VEBT_high @ X3 @ N4 )
                                                          = I )
                                                        & ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I ) @ ( vEBT_VEBT_low @ X3 @ N4 ) ) )
                                                     => ( ( ord_less_nat @ Mi2 @ X3 )
                                                        & ( ord_less_eq_nat @ X3 @ Ma2 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% invar_vebt.cases
thf(fact_951_invar__vebt_Osimps,axiom,
    ( vEBT_invar_vebt
    = ( ^ [A12: vEBT_VEBT,A23: nat] :
          ( ( ? [A4: $o,B4: $o] :
                ( A12
                = ( vEBT_Leaf @ A4 @ B4 ) )
            & ( A23
              = ( suc @ zero_zero_nat ) ) )
          | ? [TreeList: list_VEBT_VEBT,N2: nat,Summary3: vEBT_VEBT] :
              ( ( A12
                = ( vEBT_Node @ none_P5556105721700978146at_nat @ A23 @ TreeList @ Summary3 ) )
              & ! [X4: vEBT_VEBT] :
                  ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                 => ( vEBT_invar_vebt @ X4 @ N2 ) )
              & ( vEBT_invar_vebt @ Summary3 @ N2 )
              & ( ( size_s6755466524823107622T_VEBT @ TreeList )
                = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) )
              & ( A23
                = ( plus_plus_nat @ N2 @ N2 ) )
              & ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary3 @ X2 )
              & ! [X4: vEBT_VEBT] :
                  ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                 => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
          | ? [TreeList: list_VEBT_VEBT,N2: nat,Summary3: vEBT_VEBT] :
              ( ( A12
                = ( vEBT_Node @ none_P5556105721700978146at_nat @ A23 @ TreeList @ Summary3 ) )
              & ! [X4: vEBT_VEBT] :
                  ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                 => ( vEBT_invar_vebt @ X4 @ N2 ) )
              & ( vEBT_invar_vebt @ Summary3 @ ( suc @ N2 ) )
              & ( ( size_s6755466524823107622T_VEBT @ TreeList )
                = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ N2 ) ) )
              & ( A23
                = ( plus_plus_nat @ N2 @ ( suc @ N2 ) ) )
              & ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary3 @ X2 )
              & ! [X4: vEBT_VEBT] :
                  ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                 => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
          | ? [TreeList: list_VEBT_VEBT,N2: nat,Summary3: vEBT_VEBT,Mi3: nat,Ma3: nat] :
              ( ( A12
                = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi3 @ Ma3 ) ) @ A23 @ TreeList @ Summary3 ) )
              & ! [X4: vEBT_VEBT] :
                  ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                 => ( vEBT_invar_vebt @ X4 @ N2 ) )
              & ( vEBT_invar_vebt @ Summary3 @ N2 )
              & ( ( size_s6755466524823107622T_VEBT @ TreeList )
                = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) )
              & ( A23
                = ( plus_plus_nat @ N2 @ N2 ) )
              & ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) )
                 => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList @ I4 ) @ X2 ) )
                    = ( vEBT_V8194947554948674370ptions @ Summary3 @ I4 ) ) )
              & ( ( Mi3 = Ma3 )
               => ! [X4: vEBT_VEBT] :
                    ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                   => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
              & ( ord_less_eq_nat @ Mi3 @ Ma3 )
              & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A23 ) )
              & ( ( Mi3 != Ma3 )
               => ! [I4: nat] :
                    ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) )
                   => ( ( ( ( vEBT_VEBT_high @ Ma3 @ N2 )
                          = I4 )
                       => ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList @ I4 ) @ ( vEBT_VEBT_low @ Ma3 @ N2 ) ) )
                      & ! [X4: nat] :
                          ( ( ( ( vEBT_VEBT_high @ X4 @ N2 )
                              = I4 )
                            & ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList @ I4 ) @ ( vEBT_VEBT_low @ X4 @ N2 ) ) )
                         => ( ( ord_less_nat @ Mi3 @ X4 )
                            & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) )
          | ? [TreeList: list_VEBT_VEBT,N2: nat,Summary3: vEBT_VEBT,Mi3: nat,Ma3: nat] :
              ( ( A12
                = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi3 @ Ma3 ) ) @ A23 @ TreeList @ Summary3 ) )
              & ! [X4: vEBT_VEBT] :
                  ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                 => ( vEBT_invar_vebt @ X4 @ N2 ) )
              & ( vEBT_invar_vebt @ Summary3 @ ( suc @ N2 ) )
              & ( ( size_s6755466524823107622T_VEBT @ TreeList )
                = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ N2 ) ) )
              & ( A23
                = ( plus_plus_nat @ N2 @ ( suc @ N2 ) ) )
              & ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ N2 ) ) )
                 => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList @ I4 ) @ X2 ) )
                    = ( vEBT_V8194947554948674370ptions @ Summary3 @ I4 ) ) )
              & ( ( Mi3 = Ma3 )
               => ! [X4: vEBT_VEBT] :
                    ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList ) )
                   => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
              & ( ord_less_eq_nat @ Mi3 @ Ma3 )
              & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A23 ) )
              & ( ( Mi3 != Ma3 )
               => ! [I4: nat] :
                    ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ N2 ) ) )
                   => ( ( ( ( vEBT_VEBT_high @ Ma3 @ N2 )
                          = I4 )
                       => ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList @ I4 ) @ ( vEBT_VEBT_low @ Ma3 @ N2 ) ) )
                      & ! [X4: nat] :
                          ( ( ( ( vEBT_VEBT_high @ X4 @ N2 )
                              = I4 )
                            & ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList @ I4 ) @ ( vEBT_VEBT_low @ X4 @ N2 ) ) )
                         => ( ( ord_less_nat @ Mi3 @ X4 )
                            & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) ) ) ) ).

% invar_vebt.simps
thf(fact_952_invar__vebt_Ointros_I2_J,axiom,
    ! [TreeList2: list_VEBT_VEBT,N: nat,Summary: vEBT_VEBT,M: nat,Deg: nat] :
      ( ! [X5: vEBT_VEBT] :
          ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
         => ( vEBT_invar_vebt @ X5 @ N ) )
     => ( ( vEBT_invar_vebt @ Summary @ M )
       => ( ( ( size_s6755466524823107622T_VEBT @ TreeList2 )
            = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
         => ( ( M = N )
           => ( ( Deg
                = ( plus_plus_nat @ N @ M ) )
             => ( ~ ? [X_12: nat] : ( vEBT_V8194947554948674370ptions @ Summary @ X_12 )
               => ( ! [X5: vEBT_VEBT] :
                      ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
                     => ~ ? [X_12: nat] : ( vEBT_V8194947554948674370ptions @ X5 @ X_12 ) )
                 => ( vEBT_invar_vebt @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Deg @ TreeList2 @ Summary ) @ Deg ) ) ) ) ) ) ) ) ).

% invar_vebt.intros(2)
thf(fact_953_member__valid__both__member__options,axiom,
    ! [Tree: vEBT_VEBT,N: nat,X: nat] :
      ( ( vEBT_invar_vebt @ Tree @ N )
     => ( ( vEBT_vebt_member @ Tree @ X )
       => ( ( vEBT_V5719532721284313246member @ Tree @ X )
          | ( vEBT_VEBT_membermima @ Tree @ X ) ) ) ) ).

% member_valid_both_member_options
thf(fact_954_both__member__options__def,axiom,
    ( vEBT_V8194947554948674370ptions
    = ( ^ [T2: vEBT_VEBT,X4: nat] :
          ( ( vEBT_V5719532721284313246member @ T2 @ X4 )
          | ( vEBT_VEBT_membermima @ T2 @ X4 ) ) ) ) ).

% both_member_options_def
thf(fact_955_pos__eucl__rel__int__mult__2,axiom,
    ! [B: int,A: int,Q2: int,R2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ B )
     => ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R2 ) )
       => ( eucl_rel_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) @ ( product_Pair_int_int @ Q2 @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R2 ) ) ) ) ) ) ).

% pos_eucl_rel_int_mult_2
thf(fact_956_gcd__nat__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [M5: nat] : ( P @ M5 @ zero_zero_nat )
     => ( ! [M5: nat,N4: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N4 )
           => ( ( P @ N4 @ ( modulo_modulo_nat @ M5 @ N4 ) )
             => ( P @ M5 @ N4 ) ) )
       => ( P @ M @ N ) ) ) ).

% gcd_nat_induct
thf(fact_957_concat__bit__Suc,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( bit_concat_bit @ ( suc @ N ) @ K @ L2 )
      = ( plus_plus_int @ ( modulo_modulo_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_concat_bit @ N @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ L2 ) ) ) ) ).

% concat_bit_Suc
thf(fact_958_buildup__nothing__in__min__max,axiom,
    ! [N: nat,X: nat] :
      ~ ( vEBT_VEBT_membermima @ ( vEBT_vebt_buildup @ N ) @ X ) ).

% buildup_nothing_in_min_max
thf(fact_959_concat__bit__0,axiom,
    ! [K: int,L2: int] :
      ( ( bit_concat_bit @ zero_zero_nat @ K @ L2 )
      = L2 ) ).

% concat_bit_0
thf(fact_960_concat__bit__nonnegative__iff,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_concat_bit @ N @ K @ L2 ) )
      = ( ord_less_eq_int @ zero_zero_int @ L2 ) ) ).

% concat_bit_nonnegative_iff
thf(fact_961_concat__bit__negative__iff,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( ord_less_int @ ( bit_concat_bit @ N @ K @ L2 ) @ zero_zero_int )
      = ( ord_less_int @ L2 @ zero_zero_int ) ) ).

% concat_bit_negative_iff
thf(fact_962_concat__bit__assoc,axiom,
    ! [N: nat,K: int,M: nat,L2: int,R2: int] :
      ( ( bit_concat_bit @ N @ K @ ( bit_concat_bit @ M @ L2 @ R2 ) )
      = ( bit_concat_bit @ ( plus_plus_nat @ M @ N ) @ ( bit_concat_bit @ N @ K @ L2 ) @ R2 ) ) ).

% concat_bit_assoc
thf(fact_963_eucl__rel__int__dividesI,axiom,
    ! [L2: int,K: int,Q2: int] :
      ( ( L2 != zero_zero_int )
     => ( ( K
          = ( times_times_int @ Q2 @ L2 ) )
       => ( eucl_rel_int @ K @ L2 @ ( product_Pair_int_int @ Q2 @ zero_zero_int ) ) ) ) ).

% eucl_rel_int_dividesI
thf(fact_964_VEBT__internal_Omembermima_Osimps_I2_J,axiom,
    ! [Ux2: list_VEBT_VEBT,Uy: vEBT_VEBT,Uz: nat] :
      ~ ( vEBT_VEBT_membermima @ ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux2 @ Uy ) @ Uz ) ).

% VEBT_internal.membermima.simps(2)
thf(fact_965_VEBT__internal_Omembermima_Osimps_I3_J,axiom,
    ! [Mi: nat,Ma: nat,Va2: list_VEBT_VEBT,Vb: vEBT_VEBT,X: nat] :
      ( ( vEBT_VEBT_membermima @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ zero_zero_nat @ Va2 @ Vb ) @ X )
      = ( ( X = Mi )
        | ( X = Ma ) ) ) ).

% VEBT_internal.membermima.simps(3)
thf(fact_966_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A5: nat,B5: nat] :
          ( ( P @ A5 @ B5 )
          = ( P @ B5 @ A5 ) )
     => ( ! [A5: nat] : ( P @ A5 @ zero_zero_nat )
       => ( ! [A5: nat,B5: nat] :
              ( ( P @ A5 @ B5 )
             => ( P @ A5 @ ( plus_plus_nat @ A5 @ B5 ) ) )
         => ( P @ A @ B ) ) ) ) ).

% Euclid_induct
thf(fact_967_eucl__rel__int__iff,axiom,
    ! [K: int,L2: int,Q2: int,R2: int] :
      ( ( eucl_rel_int @ K @ L2 @ ( product_Pair_int_int @ Q2 @ R2 ) )
      = ( ( K
          = ( plus_plus_int @ ( times_times_int @ L2 @ Q2 ) @ R2 ) )
        & ( ( ord_less_int @ zero_zero_int @ L2 )
         => ( ( ord_less_eq_int @ zero_zero_int @ R2 )
            & ( ord_less_int @ R2 @ L2 ) ) )
        & ( ~ ( ord_less_int @ zero_zero_int @ L2 )
         => ( ( ( ord_less_int @ L2 @ zero_zero_int )
             => ( ( ord_less_int @ L2 @ R2 )
                & ( ord_less_eq_int @ R2 @ zero_zero_int ) ) )
            & ( ~ ( ord_less_int @ L2 @ zero_zero_int )
             => ( Q2 = zero_zero_int ) ) ) ) ) ) ).

% eucl_rel_int_iff
thf(fact_968_neg__eucl__rel__int__mult__2,axiom,
    ! [B: int,A: int,Q2: int,R2: int] :
      ( ( ord_less_eq_int @ B @ zero_zero_int )
     => ( ( eucl_rel_int @ ( plus_plus_int @ A @ one_one_int ) @ B @ ( product_Pair_int_int @ Q2 @ R2 ) )
       => ( eucl_rel_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) @ ( product_Pair_int_int @ Q2 @ ( minus_minus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R2 ) @ one_one_int ) ) ) ) ) ).

% neg_eucl_rel_int_mult_2
thf(fact_969_vebt__insert_Oelims,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: vEBT_VEBT] :
      ( ( ( vEBT_vebt_insert @ X @ Xa2 )
        = Y2 )
     => ( ! [A5: $o,B5: $o] :
            ( ( X
              = ( vEBT_Leaf @ A5 @ B5 ) )
           => ~ ( ( ( Xa2 = zero_zero_nat )
                 => ( Y2
                    = ( vEBT_Leaf @ $true @ B5 ) ) )
                & ( ( Xa2 != zero_zero_nat )
                 => ( ( ( Xa2 = one_one_nat )
                     => ( Y2
                        = ( vEBT_Leaf @ A5 @ $true ) ) )
                    & ( ( Xa2 != one_one_nat )
                     => ( Y2
                        = ( vEBT_Leaf @ A5 @ B5 ) ) ) ) ) ) )
       => ( ! [Info2: option4927543243414619207at_nat,Ts2: list_VEBT_VEBT,S2: vEBT_VEBT] :
              ( ( X
                = ( vEBT_Node @ Info2 @ zero_zero_nat @ Ts2 @ S2 ) )
             => ( Y2
               != ( vEBT_Node @ Info2 @ zero_zero_nat @ Ts2 @ S2 ) ) )
         => ( ! [Info2: option4927543243414619207at_nat,Ts2: list_VEBT_VEBT,S2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Info2 @ ( suc @ zero_zero_nat ) @ Ts2 @ S2 ) )
               => ( Y2
                 != ( vEBT_Node @ Info2 @ ( suc @ zero_zero_nat ) @ Ts2 @ S2 ) ) )
           => ( ! [V2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ V2 ) ) @ TreeList3 @ Summary2 ) )
                 => ( Y2
                   != ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Xa2 @ Xa2 ) ) @ ( suc @ ( suc @ V2 ) ) @ TreeList3 @ Summary2 ) ) )
             => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                    ( ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
                   => ( Y2
                     != ( if_VEBT_VEBT
                        @ ( ( ord_less_nat @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                          & ~ ( ( Xa2 = Mi2 )
                              | ( Xa2 = Ma2 ) ) )
                        @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Xa2 @ Mi2 ) @ ( ord_max_nat @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ Ma2 ) ) ) @ ( suc @ ( suc @ Va ) ) @ ( list_u1324408373059187874T_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( vEBT_vebt_insert @ Summary2 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ Summary2 ) )
                        @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) ) ) ) ) ) ) ) ) ).

% vebt_insert.elims
thf(fact_970_set__vebt_H__def,axiom,
    ( vEBT_VEBT_set_vebt
    = ( ^ [T2: vEBT_VEBT] : ( collect_nat @ ( vEBT_vebt_member @ T2 ) ) ) ) ).

% set_vebt'_def
thf(fact_971_nat__dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ one_one_nat )
      = ( M = one_one_nat ) ) ).

% nat_dvd_1_iff_1
thf(fact_972_dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ ( suc @ zero_zero_nat ) )
      = ( M
        = ( suc @ zero_zero_nat ) ) ) ).

% dvd_1_iff_1
thf(fact_973_dvd__1__left,axiom,
    ! [K: nat] : ( dvd_dvd_nat @ ( suc @ zero_zero_nat ) @ K ) ).

% dvd_1_left
thf(fact_974_nat__mult__dvd__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( dvd_dvd_nat @ M @ N ) ) ) ).

% nat_mult_dvd_cancel_disj
thf(fact_975_even__Suc,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ N ) )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% even_Suc
thf(fact_976_even__Suc__Suc__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ N ) ) )
      = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% even_Suc_Suc_iff
thf(fact_977_zle__diff1__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ W @ ( minus_minus_int @ Z @ one_one_int ) )
      = ( ord_less_int @ W @ Z ) ) ).

% zle_diff1_eq
thf(fact_978_odd__Suc__div__two,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( divide_divide_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( suc @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% odd_Suc_div_two
thf(fact_979_even__Suc__div__two,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( divide_divide_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% even_Suc_div_two
thf(fact_980_signed__take__bit__Suc__bit0,axiom,
    ! [N: nat,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ ( numeral_numeral_int @ ( bit0 @ K ) ) )
      = ( times_times_int @ ( bit_ri631733984087533419it_int @ N @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% signed_take_bit_Suc_bit0
thf(fact_981_signed__take__bit__diff,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( bit_ri631733984087533419it_int @ N @ ( minus_minus_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ ( bit_ri631733984087533419it_int @ N @ L2 ) ) )
      = ( bit_ri631733984087533419it_int @ N @ ( minus_minus_int @ K @ L2 ) ) ) ).

% signed_take_bit_diff
thf(fact_982_signed__take__bit__mult,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( bit_ri631733984087533419it_int @ N @ ( times_times_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ ( bit_ri631733984087533419it_int @ N @ L2 ) ) )
      = ( bit_ri631733984087533419it_int @ N @ ( times_times_int @ K @ L2 ) ) ) ).

% signed_take_bit_mult
thf(fact_983_signed__take__bit__add,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( bit_ri631733984087533419it_int @ N @ ( plus_plus_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ ( bit_ri631733984087533419it_int @ N @ L2 ) ) )
      = ( bit_ri631733984087533419it_int @ N @ ( plus_plus_int @ K @ L2 ) ) ) ).

% signed_take_bit_add
thf(fact_984_int__distrib_I4_J,axiom,
    ! [W: int,Z12: int,Z22: int] :
      ( ( times_times_int @ W @ ( minus_minus_int @ Z12 @ Z22 ) )
      = ( minus_minus_int @ ( times_times_int @ W @ Z12 ) @ ( times_times_int @ W @ Z22 ) ) ) ).

% int_distrib(4)
thf(fact_985_int__distrib_I3_J,axiom,
    ! [Z12: int,Z22: int,W: int] :
      ( ( times_times_int @ ( minus_minus_int @ Z12 @ Z22 ) @ W )
      = ( minus_minus_int @ ( times_times_int @ Z12 @ W ) @ ( times_times_int @ Z22 @ W ) ) ) ).

% int_distrib(3)
thf(fact_986_set__vebt__def,axiom,
    ( vEBT_set_vebt
    = ( ^ [T2: vEBT_VEBT] : ( collect_nat @ ( vEBT_V8194947554948674370ptions @ T2 ) ) ) ) ).

% set_vebt_def
thf(fact_987_even__diff__iff,axiom,
    ! [K: int,L2: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_int @ K @ L2 ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ L2 ) ) ) ).

% even_diff_iff
thf(fact_988_nat__dvd__not__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ~ ( dvd_dvd_nat @ N @ M ) ) ) ).

% nat_dvd_not_less
thf(fact_989_dvd__pos__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( dvd_dvd_nat @ M @ N )
       => ( ord_less_nat @ zero_zero_nat @ M ) ) ) ).

% dvd_pos_nat
thf(fact_990_zdvd__antisym__nonneg,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ M )
     => ( ( ord_less_eq_int @ zero_zero_int @ N )
       => ( ( dvd_dvd_int @ M @ N )
         => ( ( dvd_dvd_int @ N @ M )
           => ( M = N ) ) ) ) ) ).

% zdvd_antisym_nonneg
thf(fact_991_zdvd__mono,axiom,
    ! [K: int,M: int,T: int] :
      ( ( K != zero_zero_int )
     => ( ( dvd_dvd_int @ M @ T )
        = ( dvd_dvd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ T ) ) ) ) ).

% zdvd_mono
thf(fact_992_zdvd__mult__cancel,axiom,
    ! [K: int,M: int,N: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ N ) )
     => ( ( K != zero_zero_int )
       => ( dvd_dvd_int @ M @ N ) ) ) ).

% zdvd_mult_cancel
thf(fact_993_bezout__add__nat,axiom,
    ! [A: nat,B: nat] :
    ? [D3: nat,X5: nat,Y3: nat] :
      ( ( dvd_dvd_nat @ D3 @ A )
      & ( dvd_dvd_nat @ D3 @ B )
      & ( ( ( times_times_nat @ A @ X5 )
          = ( plus_plus_nat @ ( times_times_nat @ B @ Y3 ) @ D3 ) )
        | ( ( times_times_nat @ B @ X5 )
          = ( plus_plus_nat @ ( times_times_nat @ A @ Y3 ) @ D3 ) ) ) ) ).

% bezout_add_nat
thf(fact_994_bezout__lemma__nat,axiom,
    ! [D: nat,A: nat,B: nat,X: nat,Y2: nat] :
      ( ( dvd_dvd_nat @ D @ A )
     => ( ( dvd_dvd_nat @ D @ B )
       => ( ( ( ( times_times_nat @ A @ X )
              = ( plus_plus_nat @ ( times_times_nat @ B @ Y2 ) @ D ) )
            | ( ( times_times_nat @ B @ X )
              = ( plus_plus_nat @ ( times_times_nat @ A @ Y2 ) @ D ) ) )
         => ? [X5: nat,Y3: nat] :
              ( ( dvd_dvd_nat @ D @ A )
              & ( dvd_dvd_nat @ D @ ( plus_plus_nat @ A @ B ) )
              & ( ( ( times_times_nat @ A @ X5 )
                  = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ Y3 ) @ D ) )
                | ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ X5 )
                  = ( plus_plus_nat @ ( times_times_nat @ A @ Y3 ) @ D ) ) ) ) ) ) ) ).

% bezout_lemma_nat
thf(fact_995_int__le__induct,axiom,
    ! [I2: int,K: int,P: int > $o] :
      ( ( ord_less_eq_int @ I2 @ K )
     => ( ( P @ K )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I2 ) ) ) ) ).

% int_le_induct
thf(fact_996_int__less__induct,axiom,
    ! [I2: int,K: int,P: int > $o] :
      ( ( ord_less_int @ I2 @ K )
     => ( ( P @ ( minus_minus_int @ K @ one_one_int ) )
       => ( ! [I3: int] :
              ( ( ord_less_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I2 ) ) ) ) ).

% int_less_induct
thf(fact_997_zdvd__reduce,axiom,
    ! [K: int,N: int,M: int] :
      ( ( dvd_dvd_int @ K @ ( plus_plus_int @ N @ ( times_times_int @ K @ M ) ) )
      = ( dvd_dvd_int @ K @ N ) ) ).

% zdvd_reduce
thf(fact_998_zdvd__period,axiom,
    ! [A: int,D: int,X: int,T: int,C: int] :
      ( ( dvd_dvd_int @ A @ D )
     => ( ( dvd_dvd_int @ A @ ( plus_plus_int @ X @ T ) )
        = ( dvd_dvd_int @ A @ ( plus_plus_int @ ( plus_plus_int @ X @ ( times_times_int @ C @ D ) ) @ T ) ) ) ) ).

% zdvd_period
thf(fact_999_signed__take__bit__int__less__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K )
     => ( ord_less_eq_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ ( minus_minus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( suc @ N ) ) ) ) ) ).

% signed_take_bit_int_less_eq
thf(fact_1000_dvd__imp__le,axiom,
    ! [K: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat @ K @ N ) ) ) ).

% dvd_imp_le
thf(fact_1001_dvd__mult__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( dvd_dvd_nat @ M @ N ) ) ) ).

% dvd_mult_cancel
thf(fact_1002_nat__mult__dvd__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( dvd_dvd_nat @ M @ N ) ) ) ).

% nat_mult_dvd_cancel1
thf(fact_1003_bezout__add__strong__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ? [D3: nat,X5: nat,Y3: nat] :
          ( ( dvd_dvd_nat @ D3 @ A )
          & ( dvd_dvd_nat @ D3 @ B )
          & ( ( times_times_nat @ A @ X5 )
            = ( plus_plus_nat @ ( times_times_nat @ B @ Y3 ) @ D3 ) ) ) ) ).

% bezout_add_strong_nat
thf(fact_1004_zdvd__imp__le,axiom,
    ! [Z: int,N: int] :
      ( ( dvd_dvd_int @ Z @ N )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_eq_int @ Z @ N ) ) ) ).

% zdvd_imp_le
thf(fact_1005_mod__greater__zero__iff__not__dvd,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( modulo_modulo_nat @ M @ N ) )
      = ( ~ ( dvd_dvd_nat @ N @ M ) ) ) ).

% mod_greater_zero_iff_not_dvd
thf(fact_1006_plusinfinity,axiom,
    ! [D: int,P3: int > $o,P: int > $o] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X5: int,K2: int] :
            ( ( P3 @ X5 )
            = ( P3 @ ( minus_minus_int @ X5 @ ( times_times_int @ K2 @ D ) ) ) )
       => ( ? [Z4: int] :
            ! [X5: int] :
              ( ( ord_less_int @ Z4 @ X5 )
             => ( ( P @ X5 )
                = ( P3 @ X5 ) ) )
         => ( ? [X_1: int] : ( P3 @ X_1 )
           => ? [X_12: int] : ( P @ X_12 ) ) ) ) ) ).

% plusinfinity
thf(fact_1007_minusinfinity,axiom,
    ! [D: int,P1: int > $o,P: int > $o] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X5: int,K2: int] :
            ( ( P1 @ X5 )
            = ( P1 @ ( minus_minus_int @ X5 @ ( times_times_int @ K2 @ D ) ) ) )
       => ( ? [Z4: int] :
            ! [X5: int] :
              ( ( ord_less_int @ X5 @ Z4 )
             => ( ( P @ X5 )
                = ( P1 @ X5 ) ) )
         => ( ? [X_1: int] : ( P1 @ X_1 )
           => ? [X_12: int] : ( P @ X_12 ) ) ) ) ) ).

% minusinfinity
thf(fact_1008_int__induct,axiom,
    ! [P: int > $o,K: int,I2: int] :
      ( ( P @ K )
     => ( ! [I3: int] :
            ( ( ord_less_eq_int @ K @ I3 )
           => ( ( P @ I3 )
             => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I2 ) ) ) ) ).

% int_induct
thf(fact_1009_even__even__mod__4__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
      = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ).

% even_even_mod_4_iff
thf(fact_1010_dvd__mult__cancel1,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ M @ N ) @ M )
        = ( N = one_one_nat ) ) ) ).

% dvd_mult_cancel1
thf(fact_1011_dvd__mult__cancel2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ N @ M ) @ M )
        = ( N = one_one_nat ) ) ) ).

% dvd_mult_cancel2
thf(fact_1012_power__dvd__imp__le,axiom,
    ! [I2: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( power_power_nat @ I2 @ M ) @ ( power_power_nat @ I2 @ N ) )
     => ( ( ord_less_nat @ one_one_nat @ I2 )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_dvd_imp_le
thf(fact_1013_decr__mult__lemma,axiom,
    ! [D: int,P: int > $o,K: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X5: int] :
            ( ( P @ X5 )
           => ( P @ ( minus_minus_int @ X5 @ D ) ) )
       => ( ( ord_less_eq_int @ zero_zero_int @ K )
         => ! [X3: int] :
              ( ( P @ X3 )
             => ( P @ ( minus_minus_int @ X3 @ ( times_times_int @ K @ D ) ) ) ) ) ) ) ).

% decr_mult_lemma
thf(fact_1014_mod__int__pos__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ K @ L2 ) )
      = ( ( dvd_dvd_int @ L2 @ K )
        | ( ( L2 = zero_zero_int )
          & ( ord_less_eq_int @ zero_zero_int @ K ) )
        | ( ord_less_int @ zero_zero_int @ L2 ) ) ) ).

% mod_int_pos_iff
thf(fact_1015_mod__pos__geq,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L2 )
     => ( ( ord_less_eq_int @ L2 @ K )
       => ( ( modulo_modulo_int @ K @ L2 )
          = ( modulo_modulo_int @ ( minus_minus_int @ K @ L2 ) @ L2 ) ) ) ) ).

% mod_pos_geq
thf(fact_1016_odd__pos,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% odd_pos
thf(fact_1017_dvd__power__iff__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ( dvd_dvd_nat @ ( power_power_nat @ K @ M ) @ ( power_power_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M @ N ) ) ) ).

% dvd_power_iff_le
thf(fact_1018_signed__take__bit__int__less__exp,axiom,
    ! [N: nat,K: int] : ( ord_less_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ).

% signed_take_bit_int_less_exp
thf(fact_1019_VEBT__internal_Onaive__member_Osimps_I3_J,axiom,
    ! [Uy: option4927543243414619207at_nat,V: nat,TreeList2: list_VEBT_VEBT,S: vEBT_VEBT,X: nat] :
      ( ( vEBT_V5719532721284313246member @ ( vEBT_Node @ Uy @ ( suc @ V ) @ TreeList2 @ S ) @ X )
      = ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
         => ( vEBT_V5719532721284313246member @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
        & ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) ) ) ) ).

% VEBT_internal.naive_member.simps(3)
thf(fact_1020_signed__take__bit__int__greater__eq__self__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ K @ ( bit_ri631733984087533419it_int @ N @ K ) )
      = ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% signed_take_bit_int_greater_eq_self_iff
thf(fact_1021_signed__take__bit__int__less__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K ) ) ).

% signed_take_bit_int_less_self_iff
thf(fact_1022_VEBT__internal_Omembermima_Osimps_I5_J,axiom,
    ! [V: nat,TreeList2: list_VEBT_VEBT,Vd2: vEBT_VEBT,X: nat] :
      ( ( vEBT_VEBT_membermima @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V ) @ TreeList2 @ Vd2 ) @ X )
      = ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
         => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
        & ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) ) ) ) ).

% VEBT_internal.membermima.simps(5)
thf(fact_1023_div__pos__geq,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L2 )
     => ( ( ord_less_eq_int @ L2 @ K )
       => ( ( divide_divide_int @ K @ L2 )
          = ( plus_plus_int @ ( divide_divide_int @ ( minus_minus_int @ K @ L2 ) @ L2 ) @ one_one_int ) ) ) ) ).

% div_pos_geq
thf(fact_1024_vebt__member_Osimps_I5_J,axiom,
    ! [Mi: nat,Ma: nat,Va2: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,X: nat] :
      ( ( vEBT_vebt_member @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ ( suc @ ( suc @ Va2 ) ) @ TreeList2 @ Summary ) @ X )
      = ( ( X != Mi )
       => ( ( X != Ma )
         => ( ~ ( ord_less_nat @ X @ Mi )
            & ( ~ ( ord_less_nat @ X @ Mi )
             => ( ~ ( ord_less_nat @ Ma @ X )
                & ( ~ ( ord_less_nat @ Ma @ X )
                 => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
                     => ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                    & ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) ) ) ) ) ) ) ) ) ) ).

% vebt_member.simps(5)
thf(fact_1025_VEBT__internal_Omembermima_Osimps_I4_J,axiom,
    ! [Mi: nat,Ma: nat,V: nat,TreeList2: list_VEBT_VEBT,Vc: vEBT_VEBT,X: nat] :
      ( ( vEBT_VEBT_membermima @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ ( suc @ V ) @ TreeList2 @ Vc ) @ X )
      = ( ( X = Mi )
        | ( X = Ma )
        | ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
           => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
          & ( ord_less_nat @ ( vEBT_VEBT_high @ X @ ( divide_divide_nat @ ( suc @ V ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) ) ) ) ) ).

% VEBT_internal.membermima.simps(4)
thf(fact_1026_VEBT__internal_Onaive__member_Oelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_V5719532721284313246member @ X @ Xa2 )
     => ( ! [A5: $o,B5: $o] :
            ( ( X
              = ( vEBT_Leaf @ A5 @ B5 ) )
           => ( ( ( Xa2 = zero_zero_nat )
               => A5 )
              & ( ( Xa2 != zero_zero_nat )
               => ( ( ( Xa2 = one_one_nat )
                   => B5 )
                  & ( Xa2 = one_one_nat ) ) ) ) )
       => ( ! [Uu: option4927543243414619207at_nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
              ( X
             != ( vEBT_Node @ Uu @ zero_zero_nat @ Uv @ Uw ) )
         => ~ ! [Uy2: option4927543243414619207at_nat,V2: nat,TreeList3: list_VEBT_VEBT] :
                ( ? [S2: vEBT_VEBT] :
                    ( X
                    = ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) )
               => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                   => ( vEBT_V5719532721284313246member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                  & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ).

% VEBT_internal.naive_member.elims(3)
thf(fact_1027_VEBT__internal_Onaive__member_Oelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_V5719532721284313246member @ X @ Xa2 )
     => ( ! [A5: $o,B5: $o] :
            ( ( X
              = ( vEBT_Leaf @ A5 @ B5 ) )
           => ~ ( ( ( Xa2 = zero_zero_nat )
                 => A5 )
                & ( ( Xa2 != zero_zero_nat )
                 => ( ( ( Xa2 = one_one_nat )
                     => B5 )
                    & ( Xa2 = one_one_nat ) ) ) ) )
       => ~ ! [Uy2: option4927543243414619207at_nat,V2: nat,TreeList3: list_VEBT_VEBT] :
              ( ? [S2: vEBT_VEBT] :
                  ( X
                  = ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) )
             => ~ ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                   => ( vEBT_V5719532721284313246member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                  & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ).

% VEBT_internal.naive_member.elims(2)
thf(fact_1028_VEBT__internal_Onaive__member_Oelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_V5719532721284313246member @ X @ Xa2 )
        = Y2 )
     => ( ! [A5: $o,B5: $o] :
            ( ( X
              = ( vEBT_Leaf @ A5 @ B5 ) )
           => ( Y2
              = ( ~ ( ( ( Xa2 = zero_zero_nat )
                     => A5 )
                    & ( ( Xa2 != zero_zero_nat )
                     => ( ( ( Xa2 = one_one_nat )
                         => B5 )
                        & ( Xa2 = one_one_nat ) ) ) ) ) ) )
       => ( ( ? [Uu: option4927543243414619207at_nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
                ( X
                = ( vEBT_Node @ Uu @ zero_zero_nat @ Uv @ Uw ) )
           => Y2 )
         => ~ ! [Uy2: option4927543243414619207at_nat,V2: nat,TreeList3: list_VEBT_VEBT] :
                ( ? [S2: vEBT_VEBT] :
                    ( X
                    = ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) )
               => ( Y2
                  = ( ~ ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                         => ( vEBT_V5719532721284313246member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                        & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.naive_member.elims(1)
thf(fact_1029_VEBT__internal_Omembermima_Oelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_VEBT_membermima @ X @ Xa2 )
     => ( ! [Mi2: nat,Ma2: nat] :
            ( ? [Va3: list_VEBT_VEBT,Vb2: vEBT_VEBT] :
                ( X
                = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) )
           => ~ ( ( Xa2 = Mi2 )
                | ( Xa2 = Ma2 ) ) )
       => ( ! [Mi2: nat,Ma2: nat,V2: nat,TreeList3: list_VEBT_VEBT] :
              ( ? [Vc2: vEBT_VEBT] :
                  ( X
                  = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) )
             => ~ ( ( Xa2 = Mi2 )
                  | ( Xa2 = Ma2 )
                  | ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                     => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                    & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) )
         => ~ ! [V2: nat,TreeList3: list_VEBT_VEBT] :
                ( ? [Vd: vEBT_VEBT] :
                    ( X
                    = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) )
               => ~ ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                     => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                    & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ).

% VEBT_internal.membermima.elims(2)
thf(fact_1030_vebt__member_Oelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_vebt_member @ X @ Xa2 )
     => ( ! [A5: $o,B5: $o] :
            ( ( X
              = ( vEBT_Leaf @ A5 @ B5 ) )
           => ~ ( ( ( Xa2 = zero_zero_nat )
                 => A5 )
                & ( ( Xa2 != zero_zero_nat )
                 => ( ( ( Xa2 = one_one_nat )
                     => B5 )
                    & ( Xa2 = one_one_nat ) ) ) ) )
       => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT] :
              ( ? [Summary2: vEBT_VEBT] :
                  ( X
                  = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
             => ~ ( ( Xa2 != Mi2 )
                 => ( ( Xa2 != Ma2 )
                   => ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                      & ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                       => ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                          & ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                           => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                               => ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                              & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ) ) ) ).

% vebt_member.elims(2)
thf(fact_1031_VEBT__internal_Omembermima_Oelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_VEBT_membermima @ X @ Xa2 )
     => ( ! [Uu: $o,Uv: $o] :
            ( X
           != ( vEBT_Leaf @ Uu @ Uv ) )
       => ( ! [Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
              ( X
             != ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux @ Uy2 ) )
         => ( ! [Mi2: nat,Ma2: nat] :
                ( ? [Va3: list_VEBT_VEBT,Vb2: vEBT_VEBT] :
                    ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) )
               => ( ( Xa2 = Mi2 )
                  | ( Xa2 = Ma2 ) ) )
           => ( ! [Mi2: nat,Ma2: nat,V2: nat,TreeList3: list_VEBT_VEBT] :
                  ( ? [Vc2: vEBT_VEBT] :
                      ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) )
                 => ( ( Xa2 = Mi2 )
                    | ( Xa2 = Ma2 )
                    | ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                       => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                      & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) )
             => ~ ! [V2: nat,TreeList3: list_VEBT_VEBT] :
                    ( ? [Vd: vEBT_VEBT] :
                        ( X
                        = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) )
                   => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                       => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                      & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.membermima.elims(3)
thf(fact_1032_VEBT__internal_Omembermima_Oelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_VEBT_membermima @ X @ Xa2 )
        = Y2 )
     => ( ( ? [Uu: $o,Uv: $o] :
              ( X
              = ( vEBT_Leaf @ Uu @ Uv ) )
         => Y2 )
       => ( ( ? [Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
                ( X
                = ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux @ Uy2 ) )
           => Y2 )
         => ( ! [Mi2: nat,Ma2: nat] :
                ( ? [Va3: list_VEBT_VEBT,Vb2: vEBT_VEBT] :
                    ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) )
               => ( Y2
                  = ( ~ ( ( Xa2 = Mi2 )
                        | ( Xa2 = Ma2 ) ) ) ) )
           => ( ! [Mi2: nat,Ma2: nat,V2: nat,TreeList3: list_VEBT_VEBT] :
                  ( ? [Vc2: vEBT_VEBT] :
                      ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) )
                 => ( Y2
                    = ( ~ ( ( Xa2 = Mi2 )
                          | ( Xa2 = Ma2 )
                          | ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                             => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                            & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) )
             => ~ ! [V2: nat,TreeList3: list_VEBT_VEBT] :
                    ( ? [Vd: vEBT_VEBT] :
                        ( X
                        = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) )
                   => ( Y2
                      = ( ~ ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                             => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                            & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.membermima.elims(1)
thf(fact_1033_vebt__insert_Osimps_I5_J,axiom,
    ! [Mi: nat,Ma: nat,Va2: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,X: nat] :
      ( ( vEBT_vebt_insert @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ ( suc @ ( suc @ Va2 ) ) @ TreeList2 @ Summary ) @ X )
      = ( if_VEBT_VEBT
        @ ( ( ord_less_nat @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ Mi @ X ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList2 ) )
          & ~ ( ( X = Mi )
              | ( X = Ma ) ) )
        @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ X @ Mi ) @ ( ord_max_nat @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ Mi @ X ) @ Ma ) ) ) @ ( suc @ ( suc @ Va2 ) ) @ ( list_u1324408373059187874T_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ Mi @ X ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ Mi @ X ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ Mi @ X ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ TreeList2 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ Mi @ X ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( vEBT_vebt_insert @ Summary @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ X @ Mi ) @ Mi @ X ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ Summary ) )
        @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi @ Ma ) ) @ ( suc @ ( suc @ Va2 ) ) @ TreeList2 @ Summary ) ) ) ).

% vebt_insert.simps(5)
thf(fact_1034_vebt__member_Oelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_vebt_member @ X @ Xa2 )
     => ( ! [A5: $o,B5: $o] :
            ( ( X
              = ( vEBT_Leaf @ A5 @ B5 ) )
           => ( ( ( Xa2 = zero_zero_nat )
               => A5 )
              & ( ( Xa2 != zero_zero_nat )
               => ( ( ( Xa2 = one_one_nat )
                   => B5 )
                  & ( Xa2 = one_one_nat ) ) ) ) )
       => ( ! [Uu: nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
              ( X
             != ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu @ Uv @ Uw ) )
         => ( ! [V2: product_prod_nat_nat,Uy2: list_VEBT_VEBT,Uz2: vEBT_VEBT] :
                ( X
               != ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ zero_zero_nat @ Uy2 @ Uz2 ) )
           => ( ! [V2: product_prod_nat_nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                  ( X
                 != ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ ( suc @ zero_zero_nat ) @ Vb2 @ Vc2 ) )
             => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT] :
                    ( ? [Summary2: vEBT_VEBT] :
                        ( X
                        = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
                   => ( ( Xa2 != Mi2 )
                     => ( ( Xa2 != Ma2 )
                       => ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                          & ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                           => ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                              & ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                               => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                                   => ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                  & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% vebt_member.elims(3)
thf(fact_1035_vebt__member_Oelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_vebt_member @ X @ Xa2 )
        = Y2 )
     => ( ! [A5: $o,B5: $o] :
            ( ( X
              = ( vEBT_Leaf @ A5 @ B5 ) )
           => ( Y2
              = ( ~ ( ( ( Xa2 = zero_zero_nat )
                     => A5 )
                    & ( ( Xa2 != zero_zero_nat )
                     => ( ( ( Xa2 = one_one_nat )
                         => B5 )
                        & ( Xa2 = one_one_nat ) ) ) ) ) ) )
       => ( ( ? [Uu: nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
                ( X
                = ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu @ Uv @ Uw ) )
           => Y2 )
         => ( ( ? [V2: product_prod_nat_nat,Uy2: list_VEBT_VEBT,Uz2: vEBT_VEBT] :
                  ( X
                  = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ zero_zero_nat @ Uy2 @ Uz2 ) )
             => Y2 )
           => ( ( ? [V2: product_prod_nat_nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                    ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ ( suc @ zero_zero_nat ) @ Vb2 @ Vc2 ) )
               => Y2 )
             => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT] :
                    ( ? [Summary2: vEBT_VEBT] :
                        ( X
                        = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
                   => ( Y2
                      = ( ~ ( ( Xa2 != Mi2 )
                           => ( ( Xa2 != Ma2 )
                             => ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                                & ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                                 => ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                                    & ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                                     => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                                         => ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                        & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% vebt_member.elims(1)
thf(fact_1036_neg__zmod__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( modulo_modulo_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( minus_minus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( modulo_modulo_int @ ( plus_plus_int @ B @ one_one_int ) @ A ) ) @ one_one_int ) ) ) ).

% neg_zmod_mult_2
thf(fact_1037_vebt__insert_Opelims,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: vEBT_VEBT] :
      ( ( ( vEBT_vebt_insert @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_insert_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [A5: $o,B5: $o] :
              ( ( X
                = ( vEBT_Leaf @ A5 @ B5 ) )
             => ( ( ( ( Xa2 = zero_zero_nat )
                   => ( Y2
                      = ( vEBT_Leaf @ $true @ B5 ) ) )
                  & ( ( Xa2 != zero_zero_nat )
                   => ( ( ( Xa2 = one_one_nat )
                       => ( Y2
                          = ( vEBT_Leaf @ A5 @ $true ) ) )
                      & ( ( Xa2 != one_one_nat )
                       => ( Y2
                          = ( vEBT_Leaf @ A5 @ B5 ) ) ) ) ) )
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_insert_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ Xa2 ) ) ) )
         => ( ! [Info2: option4927543243414619207at_nat,Ts2: list_VEBT_VEBT,S2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Info2 @ zero_zero_nat @ Ts2 @ S2 ) )
               => ( ( Y2
                    = ( vEBT_Node @ Info2 @ zero_zero_nat @ Ts2 @ S2 ) )
                 => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_insert_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Info2 @ zero_zero_nat @ Ts2 @ S2 ) @ Xa2 ) ) ) )
           => ( ! [Info2: option4927543243414619207at_nat,Ts2: list_VEBT_VEBT,S2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ Info2 @ ( suc @ zero_zero_nat ) @ Ts2 @ S2 ) )
                 => ( ( Y2
                      = ( vEBT_Node @ Info2 @ ( suc @ zero_zero_nat ) @ Ts2 @ S2 ) )
                   => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_insert_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Info2 @ ( suc @ zero_zero_nat ) @ Ts2 @ S2 ) @ Xa2 ) ) ) )
             => ( ! [V2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                    ( ( X
                      = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ V2 ) ) @ TreeList3 @ Summary2 ) )
                   => ( ( Y2
                        = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Xa2 @ Xa2 ) ) @ ( suc @ ( suc @ V2 ) ) @ TreeList3 @ Summary2 ) )
                     => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_insert_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ V2 ) ) @ TreeList3 @ Summary2 ) @ Xa2 ) ) ) )
               => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                      ( ( X
                        = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
                     => ( ( Y2
                          = ( if_VEBT_VEBT
                            @ ( ( ord_less_nat @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                              & ~ ( ( Xa2 = Mi2 )
                                  | ( Xa2 = Ma2 ) ) )
                            @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Xa2 @ Mi2 ) @ ( ord_max_nat @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ Ma2 ) ) ) @ ( suc @ ( suc @ Va ) ) @ ( list_u1324408373059187874T_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( if_VEBT_VEBT @ ( vEBT_VEBT_minNull @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( vEBT_vebt_insert @ Summary2 @ ( vEBT_VEBT_high @ ( if_nat @ ( ord_less_nat @ Xa2 @ Mi2 ) @ Mi2 @ Xa2 ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ Summary2 ) )
                            @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) ) )
                       => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_insert_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) @ Xa2 ) ) ) ) ) ) ) ) ) ) ).

% vebt_insert.pelims
thf(fact_1038_div2__even__ext__nat,axiom,
    ! [X: nat,Y2: nat] :
      ( ( ( divide_divide_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( divide_divide_nat @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ X )
          = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Y2 ) )
       => ( X = Y2 ) ) ) ).

% div2_even_ext_nat
thf(fact_1039_vebt__buildup_Oelims,axiom,
    ! [X: nat,Y2: vEBT_VEBT] :
      ( ( ( vEBT_vebt_buildup @ X )
        = Y2 )
     => ( ( ( X = zero_zero_nat )
         => ( Y2
           != ( vEBT_Leaf @ $false @ $false ) ) )
       => ( ( ( X
              = ( suc @ zero_zero_nat ) )
           => ( Y2
             != ( vEBT_Leaf @ $false @ $false ) ) )
         => ~ ! [Va: nat] :
                ( ( X
                  = ( suc @ ( suc @ Va ) ) )
               => ~ ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ Va ) ) )
                     => ( Y2
                        = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ Va ) ) @ ( replicate_VEBT_VEBT @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) )
                    & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ Va ) ) )
                     => ( Y2
                        = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ Va ) ) @ ( replicate_VEBT_VEBT @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( suc @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% vebt_buildup.elims
thf(fact_1040_vebt__member_Opelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_vebt_member @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [A5: $o,B5: $o] :
              ( ( X
                = ( vEBT_Leaf @ A5 @ B5 ) )
             => ( ( Y2
                  = ( ( ( Xa2 = zero_zero_nat )
                     => A5 )
                    & ( ( Xa2 != zero_zero_nat )
                     => ( ( ( Xa2 = one_one_nat )
                         => B5 )
                        & ( Xa2 = one_one_nat ) ) ) ) )
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ Xa2 ) ) ) )
         => ( ! [Uu: nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu @ Uv @ Uw ) )
               => ( ~ Y2
                 => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu @ Uv @ Uw ) @ Xa2 ) ) ) )
           => ( ! [V2: product_prod_nat_nat,Uy2: list_VEBT_VEBT,Uz2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ zero_zero_nat @ Uy2 @ Uz2 ) )
                 => ( ~ Y2
                   => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ zero_zero_nat @ Uy2 @ Uz2 ) @ Xa2 ) ) ) )
             => ( ! [V2: product_prod_nat_nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                    ( ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ ( suc @ zero_zero_nat ) @ Vb2 @ Vc2 ) )
                   => ( ~ Y2
                     => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ ( suc @ zero_zero_nat ) @ Vb2 @ Vc2 ) @ Xa2 ) ) ) )
               => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                      ( ( X
                        = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
                     => ( ( Y2
                          = ( ( Xa2 != Mi2 )
                           => ( ( Xa2 != Ma2 )
                             => ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                                & ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                                 => ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                                    & ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                                     => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                                         => ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                        & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) )
                       => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) @ Xa2 ) ) ) ) ) ) ) ) ) ) ).

% vebt_member.pelims(1)
thf(fact_1041_vebt__member_Opelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_vebt_member @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [A5: $o,B5: $o] :
              ( ( X
                = ( vEBT_Leaf @ A5 @ B5 ) )
             => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ Xa2 ) )
               => ( ( ( Xa2 = zero_zero_nat )
                   => A5 )
                  & ( ( Xa2 != zero_zero_nat )
                   => ( ( ( Xa2 = one_one_nat )
                       => B5 )
                      & ( Xa2 = one_one_nat ) ) ) ) ) )
         => ( ! [Uu: nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu @ Uv @ Uw ) )
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Uu @ Uv @ Uw ) @ Xa2 ) ) )
           => ( ! [V2: product_prod_nat_nat,Uy2: list_VEBT_VEBT,Uz2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ zero_zero_nat @ Uy2 @ Uz2 ) )
                 => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ zero_zero_nat @ Uy2 @ Uz2 ) @ Xa2 ) ) )
             => ( ! [V2: product_prod_nat_nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                    ( ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ ( suc @ zero_zero_nat ) @ Vb2 @ Vc2 ) )
                   => ~ ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ V2 ) @ ( suc @ zero_zero_nat ) @ Vb2 @ Vc2 ) @ Xa2 ) ) )
               => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                      ( ( X
                        = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
                     => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) @ Xa2 ) )
                       => ( ( Xa2 != Mi2 )
                         => ( ( Xa2 != Ma2 )
                           => ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                              & ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                               => ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                                  & ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                                   => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                                       => ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                      & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% vebt_member.pelims(3)
thf(fact_1042_vebt__member_Opelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_vebt_member @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [A5: $o,B5: $o] :
              ( ( X
                = ( vEBT_Leaf @ A5 @ B5 ) )
             => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ Xa2 ) )
               => ~ ( ( ( Xa2 = zero_zero_nat )
                     => A5 )
                    & ( ( Xa2 != zero_zero_nat )
                     => ( ( ( Xa2 = one_one_nat )
                         => B5 )
                        & ( Xa2 = one_one_nat ) ) ) ) ) )
         => ~ ! [Mi2: nat,Ma2: nat,Va: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) )
               => ( ( accp_P2887432264394892906BT_nat @ vEBT_vebt_member_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ ( suc @ Va ) ) @ TreeList3 @ Summary2 ) @ Xa2 ) )
                 => ~ ( ( Xa2 != Mi2 )
                     => ( ( Xa2 != Ma2 )
                       => ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                          & ( ~ ( ord_less_nat @ Xa2 @ Mi2 )
                           => ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                              & ( ~ ( ord_less_nat @ Ma2 @ Xa2 )
                               => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                                   => ( vEBT_vebt_member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                  & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% vebt_member.pelims(2)
thf(fact_1043_diff__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_Suc_Suc
thf(fact_1044_Suc__diff__diff,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ N ) @ K ) ) ).

% Suc_diff_diff
thf(fact_1045_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_1046_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_1047_diff__diff__cancel,axiom,
    ! [I2: nat,N: nat] :
      ( ( ord_less_eq_nat @ I2 @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I2 ) )
        = I2 ) ) ).

% diff_diff_cancel
thf(fact_1048_diff__diff__left,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I2 @ J ) @ K )
      = ( minus_minus_nat @ I2 @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_1049_idiff__0,axiom,
    ! [N: extended_enat] :
      ( ( minus_3235023915231533773d_enat @ zero_z5237406670263579293d_enat @ N )
      = zero_z5237406670263579293d_enat ) ).

% idiff_0
thf(fact_1050_idiff__0__right,axiom,
    ! [N: extended_enat] :
      ( ( minus_3235023915231533773d_enat @ N @ zero_z5237406670263579293d_enat )
      = N ) ).

% idiff_0_right
thf(fact_1051_zero__less__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
      = ( ord_less_nat @ M @ N ) ) ).

% zero_less_diff
thf(fact_1052_diff__is__0__eq_H,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_1053_diff__is__0__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% diff_is_0_eq
thf(fact_1054_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I2 @ K ) @ J ) ) ) ).

% Nat.diff_diff_right
thf(fact_1055_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I2 )
        = ( minus_minus_nat @ ( plus_plus_nat @ J @ I2 ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_1056_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I2 @ J ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_1057_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_1058_Suc__pred,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% Suc_pred
thf(fact_1059_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J @ K ) ) @ I2 )
        = ( minus_minus_nat @ ( suc @ J ) @ ( plus_plus_nat @ K @ I2 ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_1060_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I2 @ ( suc @ ( minus_minus_nat @ J @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I2 @ K ) @ ( suc @ J ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_1061_Suc__diff__1,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
        = N ) ) ).

% Suc_diff_1
thf(fact_1062_odd__Suc__minus__one,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% odd_Suc_minus_one
thf(fact_1063_even__diff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% even_diff_nat
thf(fact_1064_odd__two__times__div__two__nat,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% odd_two_times_div_two_nat
thf(fact_1065_dvd__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ N )
     => ( ( dvd_dvd_nat @ N @ M )
       => ( M = N ) ) ) ).

% dvd_antisym
thf(fact_1066_dvd__diff__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ M )
     => ( ( dvd_dvd_nat @ K @ N )
       => ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% dvd_diff_nat
thf(fact_1067_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I2: nat] :
      ( ( P @ K )
     => ( ! [N4: nat] :
            ( ( P @ ( suc @ N4 ) )
           => ( P @ N4 ) )
       => ( P @ ( minus_minus_nat @ K @ I2 ) ) ) ) ).

% zero_induct_lemma
thf(fact_1068_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_1069_diffs0__imp__equal,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M )
          = zero_zero_nat )
       => ( M = N ) ) ) ).

% diffs0_imp_equal
thf(fact_1070_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_1071_diff__less__mono2,axiom,
    ! [M: nat,N: nat,L2: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ord_less_nat @ M @ L2 )
       => ( ord_less_nat @ ( minus_minus_nat @ L2 @ N ) @ ( minus_minus_nat @ L2 @ M ) ) ) ) ).

% diff_less_mono2
thf(fact_1072_dvd__minus__self,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) )
      = ( ( ord_less_nat @ N @ M )
        | ( dvd_dvd_nat @ M @ N ) ) ) ).

% dvd_minus_self
thf(fact_1073_diff__le__mono2,axiom,
    ! [M: nat,N: nat,L2: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L2 @ N ) @ ( minus_minus_nat @ L2 @ M ) ) ) ).

% diff_le_mono2
thf(fact_1074_le__diff__iff_H,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C @ A ) @ ( minus_minus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_1075_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_1076_diff__le__mono,axiom,
    ! [M: nat,N: nat,L2: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ L2 ) @ ( minus_minus_nat @ N @ L2 ) ) ) ).

% diff_le_mono
thf(fact_1077_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_1078_le__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% le_diff_iff
thf(fact_1079_eq__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M = N ) ) ) ) ).

% eq_diff_iff
thf(fact_1080_dvd__diffD,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) )
     => ( ( dvd_dvd_nat @ K @ N )
       => ( ( ord_less_eq_nat @ N @ M )
         => ( dvd_dvd_nat @ K @ M ) ) ) ) ).

% dvd_diffD
thf(fact_1081_dvd__diffD1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) )
     => ( ( dvd_dvd_nat @ K @ M )
       => ( ( ord_less_eq_nat @ N @ M )
         => ( dvd_dvd_nat @ K @ N ) ) ) ) ).

% dvd_diffD1
thf(fact_1082_less__eq__dvd__minus,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( dvd_dvd_nat @ M @ N )
        = ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% less_eq_dvd_minus
thf(fact_1083_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_1084_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_1085_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_1086_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_1087_diff__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ M @ N ) @ K )
      = ( minus_minus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% diff_mult_distrib
thf(fact_1088_diff__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( minus_minus_nat @ M @ N ) )
      = ( minus_minus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% diff_mult_distrib2
thf(fact_1089_bezout1__nat,axiom,
    ! [A: nat,B: nat] :
    ? [D3: nat,X5: nat,Y3: nat] :
      ( ( dvd_dvd_nat @ D3 @ A )
      & ( dvd_dvd_nat @ D3 @ B )
      & ( ( ( minus_minus_nat @ ( times_times_nat @ A @ X5 ) @ ( times_times_nat @ B @ Y3 ) )
          = D3 )
        | ( ( minus_minus_nat @ ( times_times_nat @ B @ X5 ) @ ( times_times_nat @ A @ Y3 ) )
          = D3 ) ) ) ).

% bezout1_nat
thf(fact_1090_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_1091_Suc__diff__Suc,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( ( suc @ ( minus_minus_nat @ M @ ( suc @ N ) ) )
        = ( minus_minus_nat @ M @ N ) ) ) ).

% Suc_diff_Suc
thf(fact_1092_diff__less,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).

% diff_less
thf(fact_1093_Suc__diff__le,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( suc @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% Suc_diff_le
thf(fact_1094_diff__less__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C ) @ ( minus_minus_nat @ B @ C ) ) ) ) ).

% diff_less_mono
thf(fact_1095_less__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M @ N ) ) ) ) ).

% less_diff_iff
thf(fact_1096_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_1097_add__diff__inverse__nat,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
        = M ) ) ).

% add_diff_inverse_nat
thf(fact_1098_less__diff__conv,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_1099_Nat_Ole__imp__diff__is__add,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ( minus_minus_nat @ J @ I2 )
          = K )
        = ( J
          = ( plus_plus_nat @ K @ I2 ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_1100_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J @ I2 ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I2 ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_1101_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I2 @ J ) @ K )
        = ( plus_plus_nat @ I2 @ ( minus_minus_nat @ J @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_1102_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_eq_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ J ) ) ) ).

% Nat.le_diff_conv2
thf(fact_1103_le__diff__conv,axiom,
    ! [J: nat,K: nat,I2: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J @ K ) @ I2 )
      = ( ord_less_eq_nat @ J @ ( plus_plus_nat @ I2 @ K ) ) ) ).

% le_diff_conv
thf(fact_1104_diff__Suc__eq__diff__pred,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N ) ) ).

% diff_Suc_eq_diff_pred
thf(fact_1105_mod__if,axiom,
    ( modulo_modulo_nat
    = ( ^ [M6: nat,N2: nat] : ( if_nat @ ( ord_less_nat @ M6 @ N2 ) @ M6 @ ( modulo_modulo_nat @ ( minus_minus_nat @ M6 @ N2 ) @ N2 ) ) ) ) ).

% mod_if
thf(fact_1106_mod__geq,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( modulo_modulo_nat @ M @ N )
        = ( modulo_modulo_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ).

% mod_geq
thf(fact_1107_le__mod__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( modulo_modulo_nat @ M @ N )
        = ( modulo_modulo_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ).

% le_mod_geq
thf(fact_1108_mod__eq__dvd__iff__nat,axiom,
    ! [N: nat,M: nat,Q2: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( ( modulo_modulo_nat @ M @ Q2 )
          = ( modulo_modulo_nat @ N @ Q2 ) )
        = ( dvd_dvd_nat @ Q2 @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% mod_eq_dvd_iff_nat
thf(fact_1109_nat__minus__add__max,axiom,
    ! [N: nat,M: nat] :
      ( ( plus_plus_nat @ ( minus_minus_nat @ N @ M ) @ M )
      = ( ord_max_nat @ N @ M ) ) ).

% nat_minus_add_max
thf(fact_1110_add__diff__assoc__enat,axiom,
    ! [Z: extended_enat,Y2: extended_enat,X: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ Z @ Y2 )
     => ( ( plus_p3455044024723400733d_enat @ X @ ( minus_3235023915231533773d_enat @ Y2 @ Z ) )
        = ( minus_3235023915231533773d_enat @ ( plus_p3455044024723400733d_enat @ X @ Y2 ) @ Z ) ) ) ).

% add_diff_assoc_enat
thf(fact_1111_diff__Suc__less,axiom,
    ! [N: nat,I2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_1112_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D2: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D2 ) )
                & ~ ( P @ D2 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_1113_nat__diff__split,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ( ( ord_less_nat @ A @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D2: nat] :
            ( ( A
              = ( plus_plus_nat @ B @ D2 ) )
           => ( P @ D2 ) ) ) ) ).

% nat_diff_split
thf(fact_1114_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I2 )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I2 @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1115_nat__diff__add__eq2,axiom,
    ! [I2: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I2 ) @ U ) @ N ) ) ) ) ).

% nat_diff_add_eq2
thf(fact_1116_nat__diff__add__eq1,axiom,
    ! [J: nat,I2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I2 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I2 @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_diff_add_eq1
thf(fact_1117_nat__le__add__iff2,axiom,
    ! [I2: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I2 ) @ U ) @ N ) ) ) ) ).

% nat_le_add_iff2
thf(fact_1118_nat__le__add__iff1,axiom,
    ! [J: nat,I2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I2 )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I2 @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_le_add_iff1
thf(fact_1119_nat__eq__add__iff2,axiom,
    ! [I2: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( M
          = ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I2 ) @ U ) @ N ) ) ) ) ).

% nat_eq_add_iff2
thf(fact_1120_nat__eq__add__iff1,axiom,
    ! [J: nat,I2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I2 )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I2 @ J ) @ U ) @ M )
          = N ) ) ) ).

% nat_eq_add_iff1
thf(fact_1121_dvd__minus__add,axiom,
    ! [Q2: nat,N: nat,R2: nat,M: nat] :
      ( ( ord_less_eq_nat @ Q2 @ N )
     => ( ( ord_less_eq_nat @ Q2 @ ( times_times_nat @ R2 @ M ) )
       => ( ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ Q2 ) )
          = ( dvd_dvd_nat @ M @ ( plus_plus_nat @ N @ ( minus_minus_nat @ ( times_times_nat @ R2 @ M ) @ Q2 ) ) ) ) ) ) ).

% dvd_minus_add
thf(fact_1122_mod__nat__eqI,axiom,
    ! [R2: nat,N: nat,M: nat] :
      ( ( ord_less_nat @ R2 @ N )
     => ( ( ord_less_eq_nat @ R2 @ M )
       => ( ( dvd_dvd_nat @ N @ ( minus_minus_nat @ M @ R2 ) )
         => ( ( modulo_modulo_nat @ M @ N )
            = R2 ) ) ) ) ).

% mod_nat_eqI
thf(fact_1123_modulo__nat__def,axiom,
    ( modulo_modulo_nat
    = ( ^ [M6: nat,N2: nat] : ( minus_minus_nat @ M6 @ ( times_times_nat @ ( divide_divide_nat @ M6 @ N2 ) @ N2 ) ) ) ) ).

% modulo_nat_def
thf(fact_1124_Suc__diff__eq__diff__pred,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( minus_minus_nat @ M @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_diff_eq_diff_pred
thf(fact_1125_Suc__pred_H,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( N
        = ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_pred'
thf(fact_1126_div__if,axiom,
    ( divide_divide_nat
    = ( ^ [M6: nat,N2: nat] :
          ( if_nat
          @ ( ( ord_less_nat @ M6 @ N2 )
            | ( N2 = zero_zero_nat ) )
          @ zero_zero_nat
          @ ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M6 @ N2 ) @ N2 ) ) ) ) ) ).

% div_if
thf(fact_1127_div__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( ( divide_divide_nat @ M @ N )
          = ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ) ) ).

% div_geq
thf(fact_1128_add__eq__if,axiom,
    ( plus_plus_nat
    = ( ^ [M6: nat,N2: nat] : ( if_nat @ ( M6 = zero_zero_nat ) @ N2 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M6 @ one_one_nat ) @ N2 ) ) ) ) ) ).

% add_eq_if
thf(fact_1129_nat__less__add__iff2,axiom,
    ! [I2: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I2 ) @ U ) @ N ) ) ) ) ).

% nat_less_add_iff2
thf(fact_1130_nat__less__add__iff1,axiom,
    ! [J: nat,I2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I2 )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I2 @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I2 @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_less_add_iff1
thf(fact_1131_mult__eq__if,axiom,
    ( times_times_nat
    = ( ^ [M6: nat,N2: nat] : ( if_nat @ ( M6 = zero_zero_nat ) @ zero_zero_nat @ ( plus_plus_nat @ N2 @ ( times_times_nat @ ( minus_minus_nat @ M6 @ one_one_nat ) @ N2 ) ) ) ) ) ).

% mult_eq_if
thf(fact_1132_diff__le__diff__pow,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ ( minus_minus_nat @ ( power_power_nat @ K @ M ) @ ( power_power_nat @ K @ N ) ) ) ) ).

% diff_le_diff_pow
thf(fact_1133_le__div__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( divide_divide_nat @ M @ N )
          = ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ) ) ).

% le_div_geq
thf(fact_1134_list__decode_Ocases,axiom,
    ! [X: nat] :
      ( ( X != zero_zero_nat )
     => ~ ! [N4: nat] :
            ( X
           != ( suc @ N4 ) ) ) ).

% list_decode.cases
thf(fact_1135_even__mod__4__div__2,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( suc @ zero_zero_nat ) )
     => ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% even_mod_4_div_2
thf(fact_1136_int__power__div__base,axiom,
    ! [M: nat,K: int] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_int @ zero_zero_int @ K )
       => ( ( divide_divide_int @ ( power_power_int @ K @ M ) @ K )
          = ( power_power_int @ K @ ( minus_minus_nat @ M @ ( suc @ zero_zero_nat ) ) ) ) ) ) ).

% int_power_div_base
thf(fact_1137_vebt__buildup_Osimps_I3_J,axiom,
    ! [Va2: nat] :
      ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ Va2 ) ) )
       => ( ( vEBT_vebt_buildup @ ( suc @ ( suc @ Va2 ) ) )
          = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ Va2 ) ) @ ( replicate_VEBT_VEBT @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) )
      & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ Va2 ) ) )
       => ( ( vEBT_vebt_buildup @ ( suc @ ( suc @ Va2 ) ) )
          = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ Va2 ) ) @ ( replicate_VEBT_VEBT @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( suc @ ( divide_divide_nat @ ( suc @ ( suc @ Va2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% vebt_buildup.simps(3)
thf(fact_1138_real__average__minus__first,axiom,
    ! [A: real,B: real] :
      ( ( minus_minus_real @ ( divide_divide_real @ ( plus_plus_real @ A @ B ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ A )
      = ( divide_divide_real @ ( minus_minus_real @ B @ A ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% real_average_minus_first
thf(fact_1139_real__average__minus__second,axiom,
    ! [B: real,A: real] :
      ( ( minus_minus_real @ ( divide_divide_real @ ( plus_plus_real @ B @ A ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ A )
      = ( divide_divide_real @ ( minus_minus_real @ B @ A ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% real_average_minus_second
thf(fact_1140_VEBT__internal_Onaive__member_Opelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_V5719532721284313246member @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [A5: $o,B5: $o] :
              ( ( X
                = ( vEBT_Leaf @ A5 @ B5 ) )
             => ( ( Y2
                  = ( ( ( Xa2 = zero_zero_nat )
                     => A5 )
                    & ( ( Xa2 != zero_zero_nat )
                     => ( ( ( Xa2 = one_one_nat )
                         => B5 )
                        & ( Xa2 = one_one_nat ) ) ) ) )
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ Xa2 ) ) ) )
         => ( ! [Uu: option4927543243414619207at_nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Uu @ zero_zero_nat @ Uv @ Uw ) )
               => ( ~ Y2
                 => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Uu @ zero_zero_nat @ Uv @ Uw ) @ Xa2 ) ) ) )
           => ~ ! [Uy2: option4927543243414619207at_nat,V2: nat,TreeList3: list_VEBT_VEBT,S2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) )
                 => ( ( Y2
                      = ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                         => ( vEBT_V5719532721284313246member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                        & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) )
                   => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) @ Xa2 ) ) ) ) ) ) ) ) ).

% VEBT_internal.naive_member.pelims(1)
thf(fact_1141_VEBT__internal_Onaive__member_Opelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_V5719532721284313246member @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [A5: $o,B5: $o] :
              ( ( X
                = ( vEBT_Leaf @ A5 @ B5 ) )
             => ( ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ Xa2 ) )
               => ~ ( ( ( Xa2 = zero_zero_nat )
                     => A5 )
                    & ( ( Xa2 != zero_zero_nat )
                     => ( ( ( Xa2 = one_one_nat )
                         => B5 )
                        & ( Xa2 = one_one_nat ) ) ) ) ) )
         => ~ ! [Uy2: option4927543243414619207at_nat,V2: nat,TreeList3: list_VEBT_VEBT,S2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) )
               => ( ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) @ Xa2 ) )
                 => ~ ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                       => ( vEBT_V5719532721284313246member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                      & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ).

% VEBT_internal.naive_member.pelims(2)
thf(fact_1142_VEBT__internal_Onaive__member_Opelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_V5719532721284313246member @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [A5: $o,B5: $o] :
              ( ( X
                = ( vEBT_Leaf @ A5 @ B5 ) )
             => ( ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ A5 @ B5 ) @ Xa2 ) )
               => ( ( ( Xa2 = zero_zero_nat )
                   => A5 )
                  & ( ( Xa2 != zero_zero_nat )
                   => ( ( ( Xa2 = one_one_nat )
                       => B5 )
                      & ( Xa2 = one_one_nat ) ) ) ) ) )
         => ( ! [Uu: option4927543243414619207at_nat,Uv: list_VEBT_VEBT,Uw: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Uu @ zero_zero_nat @ Uv @ Uw ) )
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Uu @ zero_zero_nat @ Uv @ Uw ) @ Xa2 ) ) )
           => ~ ! [Uy2: option4927543243414619207at_nat,V2: nat,TreeList3: list_VEBT_VEBT,S2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) )
                 => ( ( accp_P2887432264394892906BT_nat @ vEBT_V5765760719290551771er_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Uy2 @ ( suc @ V2 ) @ TreeList3 @ S2 ) @ Xa2 ) )
                   => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                       => ( vEBT_V5719532721284313246member @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                      & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.naive_member.pelims(3)
thf(fact_1143_VEBT__internal_Omembermima_Opelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_VEBT_membermima @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [Uu: $o,Uv: $o] :
              ( ( X
                = ( vEBT_Leaf @ Uu @ Uv ) )
             => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ Uu @ Uv ) @ Xa2 ) ) )
         => ( ! [Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux @ Uy2 ) )
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux @ Uy2 ) @ Xa2 ) ) )
           => ( ! [Mi2: nat,Ma2: nat,Va3: list_VEBT_VEBT,Vb2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) )
                 => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) @ Xa2 ) )
                   => ( ( Xa2 = Mi2 )
                      | ( Xa2 = Ma2 ) ) ) )
             => ( ! [Mi2: nat,Ma2: nat,V2: nat,TreeList3: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                    ( ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) )
                   => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) @ Xa2 ) )
                     => ( ( Xa2 = Mi2 )
                        | ( Xa2 = Ma2 )
                        | ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                           => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                          & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) )
               => ~ ! [V2: nat,TreeList3: list_VEBT_VEBT,Vd: vEBT_VEBT] :
                      ( ( X
                        = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) )
                     => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) @ Xa2 ) )
                       => ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                           => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                          & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.membermima.pelims(3)
thf(fact_1144_VEBT__internal_Omembermima_Opelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_VEBT_membermima @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [Uu: $o,Uv: $o] :
              ( ( X
                = ( vEBT_Leaf @ Uu @ Uv ) )
             => ( ~ Y2
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ Uu @ Uv ) @ Xa2 ) ) ) )
         => ( ! [Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux @ Uy2 ) )
               => ( ~ Y2
                 => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ zero_zero_nat @ Ux @ Uy2 ) @ Xa2 ) ) ) )
           => ( ! [Mi2: nat,Ma2: nat,Va3: list_VEBT_VEBT,Vb2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) )
                 => ( ( Y2
                      = ( ( Xa2 = Mi2 )
                        | ( Xa2 = Ma2 ) ) )
                   => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) @ Xa2 ) ) ) )
             => ( ! [Mi2: nat,Ma2: nat,V2: nat,TreeList3: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                    ( ( X
                      = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) )
                   => ( ( Y2
                        = ( ( Xa2 = Mi2 )
                          | ( Xa2 = Ma2 )
                          | ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                             => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                            & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) )
                     => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) @ Xa2 ) ) ) )
               => ~ ! [V2: nat,TreeList3: list_VEBT_VEBT,Vd: vEBT_VEBT] :
                      ( ( X
                        = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) )
                     => ( ( Y2
                          = ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                             => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                            & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) )
                       => ~ ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) @ Xa2 ) ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.membermima.pelims(1)
thf(fact_1145_diff__commute,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I2 @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I2 @ K ) @ J ) ) ).

% diff_commute
thf(fact_1146_VEBT__internal_Omembermima_Opelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_VEBT_membermima @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [Mi2: nat,Ma2: nat,Va3: list_VEBT_VEBT,Vb2: vEBT_VEBT] :
              ( ( X
                = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) )
             => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ zero_zero_nat @ Va3 @ Vb2 ) @ Xa2 ) )
               => ~ ( ( Xa2 = Mi2 )
                    | ( Xa2 = Ma2 ) ) ) )
         => ( ! [Mi2: nat,Ma2: nat,V2: nat,TreeList3: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) )
               => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Mi2 @ Ma2 ) ) @ ( suc @ V2 ) @ TreeList3 @ Vc2 ) @ Xa2 ) )
                 => ~ ( ( Xa2 = Mi2 )
                      | ( Xa2 = Ma2 )
                      | ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                         => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                        & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) )
           => ~ ! [V2: nat,TreeList3: list_VEBT_VEBT,Vd: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) )
                 => ( ( accp_P2887432264394892906BT_nat @ vEBT_V4351362008482014158ma_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ V2 ) @ TreeList3 @ Vd ) @ Xa2 ) )
                   => ~ ( ( ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) )
                         => ( vEBT_VEBT_membermima @ ( nth_VEBT_VEBT @ TreeList3 @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_VEBT_low @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                        & ( ord_less_nat @ ( vEBT_VEBT_high @ Xa2 @ ( divide_divide_nat @ ( suc @ V2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( size_s6755466524823107622T_VEBT @ TreeList3 ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.membermima.pelims(2)
thf(fact_1147_inrange,axiom,
    ! [T: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( ord_less_eq_set_nat @ ( vEBT_VEBT_set_vebt @ T ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ one_one_nat ) ) ) ) ).

% inrange
thf(fact_1148_Bolzano,axiom,
    ! [A: real,B: real,P: real > real > $o] :
      ( ( ord_less_eq_real @ A @ B )
     => ( ! [A5: real,B5: real,C2: real] :
            ( ( P @ A5 @ B5 )
           => ( ( P @ B5 @ C2 )
             => ( ( ord_less_eq_real @ A5 @ B5 )
               => ( ( ord_less_eq_real @ B5 @ C2 )
                 => ( P @ A5 @ C2 ) ) ) ) )
       => ( ! [X5: real] :
              ( ( ord_less_eq_real @ A @ X5 )
             => ( ( ord_less_eq_real @ X5 @ B )
               => ? [D4: real] :
                    ( ( ord_less_real @ zero_zero_real @ D4 )
                    & ! [A5: real,B5: real] :
                        ( ( ( ord_less_eq_real @ A5 @ X5 )
                          & ( ord_less_eq_real @ X5 @ B5 )
                          & ( ord_less_real @ ( minus_minus_real @ B5 @ A5 ) @ D4 ) )
                       => ( P @ A5 @ B5 ) ) ) ) )
         => ( P @ A @ B ) ) ) ) ).

% Bolzano
thf(fact_1149_triangle__def,axiom,
    ( nat_triangle
    = ( ^ [N2: nat] : ( divide_divide_nat @ ( times_times_nat @ N2 @ ( suc @ N2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% triangle_def
thf(fact_1150_vebt__buildup_Opelims,axiom,
    ! [X: nat,Y2: vEBT_VEBT] :
      ( ( ( vEBT_vebt_buildup @ X )
        = Y2 )
     => ( ( accp_nat @ vEBT_v4011308405150292612up_rel @ X )
       => ( ( ( X = zero_zero_nat )
           => ( ( Y2
                = ( vEBT_Leaf @ $false @ $false ) )
             => ~ ( accp_nat @ vEBT_v4011308405150292612up_rel @ zero_zero_nat ) ) )
         => ( ( ( X
                = ( suc @ zero_zero_nat ) )
             => ( ( Y2
                  = ( vEBT_Leaf @ $false @ $false ) )
               => ~ ( accp_nat @ vEBT_v4011308405150292612up_rel @ ( suc @ zero_zero_nat ) ) ) )
           => ~ ! [Va: nat] :
                  ( ( X
                    = ( suc @ ( suc @ Va ) ) )
                 => ( ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ Va ) ) )
                       => ( Y2
                          = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ Va ) ) @ ( replicate_VEBT_VEBT @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) )
                      & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ Va ) ) )
                       => ( Y2
                          = ( vEBT_Node @ none_P5556105721700978146at_nat @ ( suc @ ( suc @ Va ) ) @ ( replicate_VEBT_VEBT @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( vEBT_vebt_buildup @ ( suc @ ( divide_divide_nat @ ( suc @ ( suc @ Va ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) )
                   => ~ ( accp_nat @ vEBT_v4011308405150292612up_rel @ ( suc @ ( suc @ Va ) ) ) ) ) ) ) ) ) ).

% vebt_buildup.pelims
thf(fact_1151_real__add__minus__iff,axiom,
    ! [X: real,A: real] :
      ( ( ( plus_plus_real @ X @ ( uminus_uminus_real @ A ) )
        = zero_zero_real )
      = ( X = A ) ) ).

% real_add_minus_iff
thf(fact_1152_triangle__Suc,axiom,
    ! [N: nat] :
      ( ( nat_triangle @ ( suc @ N ) )
      = ( plus_plus_nat @ ( nat_triangle @ N ) @ ( suc @ N ) ) ) ).

% triangle_Suc
thf(fact_1153_signed__take__bit__Suc__minus__bit0,axiom,
    ! [N: nat,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ K ) ) ) )
      = ( times_times_int @ ( bit_ri631733984087533419it_int @ N @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% signed_take_bit_Suc_minus_bit0
thf(fact_1154_signed__take__bit__minus,axiom,
    ! [N: nat,K: int] :
      ( ( bit_ri631733984087533419it_int @ N @ ( uminus_uminus_int @ ( bit_ri631733984087533419it_int @ N @ K ) ) )
      = ( bit_ri631733984087533419it_int @ N @ ( uminus_uminus_int @ K ) ) ) ).

% signed_take_bit_minus
thf(fact_1155_all__nat__less,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M6: nat] :
            ( ( ord_less_eq_nat @ M6 @ N )
           => ( P @ M6 ) ) )
      = ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
           => ( P @ X4 ) ) ) ) ).

% all_nat_less
thf(fact_1156_ex__nat__less,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M6: nat] :
            ( ( ord_less_eq_nat @ M6 @ N )
            & ( P @ M6 ) ) )
      = ( ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
            & ( P @ X4 ) ) ) ) ).

% ex_nat_less
thf(fact_1157_real__minus__mult__self__le,axiom,
    ! [U: real,X: real] : ( ord_less_eq_real @ ( uminus_uminus_real @ ( times_times_real @ U @ U ) ) @ ( times_times_real @ X @ X ) ) ).

% real_minus_mult_self_le
thf(fact_1158_zmult__eq__1__iff,axiom,
    ! [M: int,N: int] :
      ( ( ( times_times_int @ M @ N )
        = one_one_int )
      = ( ( ( M = one_one_int )
          & ( N = one_one_int ) )
        | ( ( M
            = ( uminus_uminus_int @ one_one_int ) )
          & ( N
            = ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% zmult_eq_1_iff
thf(fact_1159_pos__zmult__eq__1__iff__lemma,axiom,
    ! [M: int,N: int] :
      ( ( ( times_times_int @ M @ N )
        = one_one_int )
     => ( ( M = one_one_int )
        | ( M
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% pos_zmult_eq_1_iff_lemma
thf(fact_1160_minus__real__def,axiom,
    ( minus_minus_real
    = ( ^ [X4: real,Y4: real] : ( plus_plus_real @ X4 @ ( uminus_uminus_real @ Y4 ) ) ) ) ).

% minus_real_def
thf(fact_1161_real__0__less__add__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ ( plus_plus_real @ X @ Y2 ) )
      = ( ord_less_real @ ( uminus_uminus_real @ X ) @ Y2 ) ) ).

% real_0_less_add_iff
thf(fact_1162_real__add__less__0__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ ( plus_plus_real @ X @ Y2 ) @ zero_zero_real )
      = ( ord_less_real @ Y2 @ ( uminus_uminus_real @ X ) ) ) ).

% real_add_less_0_iff
thf(fact_1163_real__add__le__0__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( plus_plus_real @ X @ Y2 ) @ zero_zero_real )
      = ( ord_less_eq_real @ Y2 @ ( uminus_uminus_real @ X ) ) ) ).

% real_add_le_0_iff
thf(fact_1164_real__0__le__add__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( plus_plus_real @ X @ Y2 ) )
      = ( ord_less_eq_real @ ( uminus_uminus_real @ X ) @ Y2 ) ) ).

% real_0_le_add_iff
thf(fact_1165_verit__less__mono__div__int2,axiom,
    ! [A2: int,B2: int,N: int] :
      ( ( ord_less_eq_int @ A2 @ B2 )
     => ( ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ N ) )
       => ( ord_less_eq_int @ ( divide_divide_int @ B2 @ N ) @ ( divide_divide_int @ A2 @ N ) ) ) ) ).

% verit_less_mono_div_int2
thf(fact_1166_div__eq__minus1,axiom,
    ! [B: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ B )
        = ( uminus_uminus_int @ one_one_int ) ) ) ).

% div_eq_minus1
thf(fact_1167_realpow__square__minus__le,axiom,
    ! [U: real,X: real] : ( ord_less_eq_real @ ( uminus_uminus_real @ ( power_power_real @ U @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% realpow_square_minus_le
thf(fact_1168_minus__mod__int__eq,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ L2 )
     => ( ( modulo_modulo_int @ ( uminus_uminus_int @ K ) @ L2 )
        = ( minus_minus_int @ ( minus_minus_int @ L2 @ one_one_int ) @ ( modulo_modulo_int @ ( minus_minus_int @ K @ one_one_int ) @ L2 ) ) ) ) ).

% minus_mod_int_eq
thf(fact_1169_zmod__minus1,axiom,
    ! [B: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( modulo_modulo_int @ ( uminus_uminus_int @ one_one_int ) @ B )
        = ( minus_minus_int @ B @ one_one_int ) ) ) ).

% zmod_minus1
thf(fact_1170_zdiv__zminus2__eq__if,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( ( ( modulo_modulo_int @ A @ B )
            = zero_zero_int )
         => ( ( divide_divide_int @ A @ ( uminus_uminus_int @ B ) )
            = ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) ) )
        & ( ( ( modulo_modulo_int @ A @ B )
           != zero_zero_int )
         => ( ( divide_divide_int @ A @ ( uminus_uminus_int @ B ) )
            = ( minus_minus_int @ ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) @ one_one_int ) ) ) ) ) ).

% zdiv_zminus2_eq_if
thf(fact_1171_zdiv__zminus1__eq__if,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( ( ( modulo_modulo_int @ A @ B )
            = zero_zero_int )
         => ( ( divide_divide_int @ ( uminus_uminus_int @ A ) @ B )
            = ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) ) )
        & ( ( ( modulo_modulo_int @ A @ B )
           != zero_zero_int )
         => ( ( divide_divide_int @ ( uminus_uminus_int @ A ) @ B )
            = ( minus_minus_int @ ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) @ one_one_int ) ) ) ) ) ).

% zdiv_zminus1_eq_if
thf(fact_1172_zminus1__lemma,axiom,
    ! [A: int,B: int,Q2: int,R2: int] :
      ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R2 ) )
     => ( ( B != zero_zero_int )
       => ( eucl_rel_int @ ( uminus_uminus_int @ A ) @ B @ ( product_Pair_int_int @ ( if_int @ ( R2 = zero_zero_int ) @ ( uminus_uminus_int @ Q2 ) @ ( minus_minus_int @ ( uminus_uminus_int @ Q2 ) @ one_one_int ) ) @ ( if_int @ ( R2 = zero_zero_int ) @ zero_zero_int @ ( minus_minus_int @ B @ R2 ) ) ) ) ) ) ).

% zminus1_lemma
thf(fact_1173_minus__1__div__exp__eq__int,axiom,
    ! [N: nat] :
      ( ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% minus_1_div_exp_eq_int
thf(fact_1174_div__pos__neg__trivial,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_int @ ( plus_plus_int @ K @ L2 ) @ zero_zero_int )
       => ( ( divide_divide_int @ K @ L2 )
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% div_pos_neg_trivial
thf(fact_1175_signed__take__bit__int__less__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ K ) ) ).

% signed_take_bit_int_less_eq_self_iff
thf(fact_1176_signed__take__bit__int__greater__eq__minus__exp,axiom,
    ! [N: nat,K: int] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ ( bit_ri631733984087533419it_int @ N @ K ) ) ).

% signed_take_bit_int_greater_eq_minus_exp
thf(fact_1177_signed__take__bit__int__greater__self__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ K @ ( bit_ri631733984087533419it_int @ N @ K ) )
      = ( ord_less_int @ K @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% signed_take_bit_int_greater_self_iff
thf(fact_1178_int__bit__induct,axiom,
    ! [P: int > $o,K: int] :
      ( ( P @ zero_zero_int )
     => ( ( P @ ( uminus_uminus_int @ one_one_int ) )
       => ( ! [K2: int] :
              ( ( P @ K2 )
             => ( ( K2 != zero_zero_int )
               => ( P @ ( times_times_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) )
         => ( ! [K2: int] :
                ( ( P @ K2 )
               => ( ( K2
                   != ( uminus_uminus_int @ one_one_int ) )
                 => ( P @ ( plus_plus_int @ one_one_int @ ( times_times_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) )
           => ( P @ K ) ) ) ) ) ).

% int_bit_induct
thf(fact_1179_signed__take__bit__int__eq__self,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ K )
     => ( ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( bit_ri631733984087533419it_int @ N @ K )
          = K ) ) ) ).

% signed_take_bit_int_eq_self
thf(fact_1180_signed__take__bit__int__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_ri631733984087533419it_int @ N @ K )
        = K )
      = ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ K )
        & ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% signed_take_bit_int_eq_self_iff
thf(fact_1181_signed__take__bit__int__greater__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ K @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( suc @ N ) ) ) @ ( bit_ri631733984087533419it_int @ N @ K ) ) ) ).

% signed_take_bit_int_greater_eq
thf(fact_1182_signed__take__bit__Suc__minus__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ N @ ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_Suc_minus_bit1
thf(fact_1183_set__decode__0,axiom,
    ! [X: nat] :
      ( ( member_nat @ zero_zero_nat @ ( nat_set_decode @ X ) )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ X ) ) ) ).

% set_decode_0
thf(fact_1184_set__decode__Suc,axiom,
    ! [N: nat,X: nat] :
      ( ( member_nat @ ( suc @ N ) @ ( nat_set_decode @ X ) )
      = ( member_nat @ N @ ( nat_set_decode @ ( divide_divide_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% set_decode_Suc
thf(fact_1185_semiring__norm_I90_J,axiom,
    ! [M: num,N: num] :
      ( ( ( bit1 @ M )
        = ( bit1 @ N ) )
      = ( M = N ) ) ).

% semiring_norm(90)
thf(fact_1186_semiring__norm_I89_J,axiom,
    ! [M: num,N: num] :
      ( ( bit1 @ M )
     != ( bit0 @ N ) ) ).

% semiring_norm(89)
thf(fact_1187_semiring__norm_I88_J,axiom,
    ! [M: num,N: num] :
      ( ( bit0 @ M )
     != ( bit1 @ N ) ) ).

% semiring_norm(88)
thf(fact_1188_semiring__norm_I86_J,axiom,
    ! [M: num] :
      ( ( bit1 @ M )
     != one ) ).

% semiring_norm(86)
thf(fact_1189_semiring__norm_I84_J,axiom,
    ! [N: num] :
      ( one
     != ( bit1 @ N ) ) ).

% semiring_norm(84)
thf(fact_1190_semiring__norm_I73_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(73)
thf(fact_1191_semiring__norm_I80_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(80)
thf(fact_1192_Suc__0__mod__eq,axiom,
    ! [N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( zero_n2687167440665602831ol_nat
        @ ( N
         != ( suc @ zero_zero_nat ) ) ) ) ).

% Suc_0_mod_eq
thf(fact_1193_semiring__norm_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( bit1 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(7)
thf(fact_1194_semiring__norm_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( bit1 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(9)
thf(fact_1195_semiring__norm_I14_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( bit0 @ ( times_times_num @ M @ ( bit1 @ N ) ) ) ) ).

% semiring_norm(14)
thf(fact_1196_semiring__norm_I15_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( bit0 @ ( times_times_num @ ( bit1 @ M ) @ N ) ) ) ).

% semiring_norm(15)
thf(fact_1197_semiring__norm_I72_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(72)
thf(fact_1198_semiring__norm_I81_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(81)
thf(fact_1199_semiring__norm_I70_J,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_num @ ( bit1 @ M ) @ one ) ).

% semiring_norm(70)
thf(fact_1200_semiring__norm_I77_J,axiom,
    ! [N: num] : ( ord_less_num @ one @ ( bit1 @ N ) ) ).

% semiring_norm(77)
thf(fact_1201_zdiv__numeral__Bit1,axiom,
    ! [V: num,W: num] :
      ( ( divide_divide_int @ ( numeral_numeral_int @ ( bit1 @ V ) ) @ ( numeral_numeral_int @ ( bit0 @ W ) ) )
      = ( divide_divide_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ W ) ) ) ).

% zdiv_numeral_Bit1
thf(fact_1202_semiring__norm_I10_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( bit0 @ ( plus_plus_num @ ( plus_plus_num @ M @ N ) @ one ) ) ) ).

% semiring_norm(10)
thf(fact_1203_semiring__norm_I8_J,axiom,
    ! [M: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ one )
      = ( bit0 @ ( plus_plus_num @ M @ one ) ) ) ).

% semiring_norm(8)
thf(fact_1204_semiring__norm_I5_J,axiom,
    ! [M: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ one )
      = ( bit1 @ M ) ) ).

% semiring_norm(5)
thf(fact_1205_semiring__norm_I4_J,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bit1 @ N ) )
      = ( bit0 @ ( plus_plus_num @ N @ one ) ) ) ).

% semiring_norm(4)
thf(fact_1206_semiring__norm_I3_J,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bit0 @ N ) )
      = ( bit1 @ N ) ) ).

% semiring_norm(3)
thf(fact_1207_semiring__norm_I16_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( bit1 @ ( plus_plus_num @ ( plus_plus_num @ M @ N ) @ ( bit0 @ ( times_times_num @ M @ N ) ) ) ) ) ).

% semiring_norm(16)
thf(fact_1208_semiring__norm_I74_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(74)
thf(fact_1209_semiring__norm_I79_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(79)
thf(fact_1210_div__Suc__eq__div__add3,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_nat @ M @ ( suc @ ( suc @ ( suc @ N ) ) ) )
      = ( divide_divide_nat @ M @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ) ).

% div_Suc_eq_div_add3
thf(fact_1211_Suc__div__eq__add3__div__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( divide_divide_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ ( numeral_numeral_nat @ V ) )
      = ( divide_divide_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ ( numeral_numeral_nat @ V ) ) ) ).

% Suc_div_eq_add3_div_numeral
thf(fact_1212_mod__Suc__eq__mod__add3,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ M @ ( suc @ ( suc @ ( suc @ N ) ) ) )
      = ( modulo_modulo_nat @ M @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ) ).

% mod_Suc_eq_mod_add3
thf(fact_1213_Suc__mod__eq__add3__mod__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ ( numeral_numeral_nat @ V ) )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ ( numeral_numeral_nat @ V ) ) ) ).

% Suc_mod_eq_add3_mod_numeral
thf(fact_1214_zmod__numeral__Bit1,axiom,
    ! [V: num,W: num] :
      ( ( modulo_modulo_int @ ( numeral_numeral_int @ ( bit1 @ V ) ) @ ( numeral_numeral_int @ ( bit0 @ W ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( modulo_modulo_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ W ) ) ) @ one_one_int ) ) ).

% zmod_numeral_Bit1
thf(fact_1215_signed__take__bit__Suc__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ ( numeral_numeral_int @ ( bit1 @ K ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ N @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_Suc_bit1
thf(fact_1216_verit__eq__simplify_I14_J,axiom,
    ! [X23: num,X32: num] :
      ( ( bit0 @ X23 )
     != ( bit1 @ X32 ) ) ).

% verit_eq_simplify(14)
thf(fact_1217_verit__eq__simplify_I12_J,axiom,
    ! [X32: num] :
      ( one
     != ( bit1 @ X32 ) ) ).

% verit_eq_simplify(12)
thf(fact_1218_xor__num_Ocases,axiom,
    ! [X: product_prod_num_num] :
      ( ( X
       != ( product_Pair_num_num @ one @ one ) )
     => ( ! [N4: num] :
            ( X
           != ( product_Pair_num_num @ one @ ( bit0 @ N4 ) ) )
       => ( ! [N4: num] :
              ( X
             != ( product_Pair_num_num @ one @ ( bit1 @ N4 ) ) )
         => ( ! [M5: num] :
                ( X
               != ( product_Pair_num_num @ ( bit0 @ M5 ) @ one ) )
           => ( ! [M5: num,N4: num] :
                  ( X
                 != ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit0 @ N4 ) ) )
             => ( ! [M5: num,N4: num] :
                    ( X
                   != ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit1 @ N4 ) ) )
               => ( ! [M5: num] :
                      ( X
                     != ( product_Pair_num_num @ ( bit1 @ M5 ) @ one ) )
                 => ( ! [M5: num,N4: num] :
                        ( X
                       != ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit0 @ N4 ) ) )
                   => ~ ! [M5: num,N4: num] :
                          ( X
                         != ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit1 @ N4 ) ) ) ) ) ) ) ) ) ) ) ).

% xor_num.cases
thf(fact_1219_num_Oexhaust,axiom,
    ! [Y2: num] :
      ( ( Y2 != one )
     => ( ! [X24: num] :
            ( Y2
           != ( bit0 @ X24 ) )
       => ~ ! [X33: num] :
              ( Y2
             != ( bit1 @ X33 ) ) ) ) ).

% num.exhaust
thf(fact_1220_eval__nat__numeral_I3_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit1 @ N ) )
      = ( suc @ ( numeral_numeral_nat @ ( bit0 @ N ) ) ) ) ).

% eval_nat_numeral(3)
thf(fact_1221_bset_I1_J,axiom,
    ! [D5: int,B2: set_int,P: int > $o,Q: int > $o] :
      ( ! [X5: int] :
          ( ! [Xa: int] :
              ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb: int] :
                  ( ( member_int @ Xb @ B2 )
                 => ( X5
                   != ( plus_plus_int @ Xb @ Xa ) ) ) )
         => ( ( P @ X5 )
           => ( P @ ( minus_minus_int @ X5 @ D5 ) ) ) )
     => ( ! [X5: int] :
            ( ! [Xa: int] :
                ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb: int] :
                    ( ( member_int @ Xb @ B2 )
                   => ( X5
                     != ( plus_plus_int @ Xb @ Xa ) ) ) )
           => ( ( Q @ X5 )
             => ( Q @ ( minus_minus_int @ X5 @ D5 ) ) ) )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B2 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ( P @ X3 )
                & ( Q @ X3 ) )
             => ( ( P @ ( minus_minus_int @ X3 @ D5 ) )
                & ( Q @ ( minus_minus_int @ X3 @ D5 ) ) ) ) ) ) ) ).

% bset(1)
thf(fact_1222_bset_I2_J,axiom,
    ! [D5: int,B2: set_int,P: int > $o,Q: int > $o] :
      ( ! [X5: int] :
          ( ! [Xa: int] :
              ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb: int] :
                  ( ( member_int @ Xb @ B2 )
                 => ( X5
                   != ( plus_plus_int @ Xb @ Xa ) ) ) )
         => ( ( P @ X5 )
           => ( P @ ( minus_minus_int @ X5 @ D5 ) ) ) )
     => ( ! [X5: int] :
            ( ! [Xa: int] :
                ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb: int] :
                    ( ( member_int @ Xb @ B2 )
                   => ( X5
                     != ( plus_plus_int @ Xb @ Xa ) ) ) )
           => ( ( Q @ X5 )
             => ( Q @ ( minus_minus_int @ X5 @ D5 ) ) ) )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B2 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ( P @ X3 )
                | ( Q @ X3 ) )
             => ( ( P @ ( minus_minus_int @ X3 @ D5 ) )
                | ( Q @ ( minus_minus_int @ X3 @ D5 ) ) ) ) ) ) ) ).

% bset(2)
thf(fact_1223_aset_I1_J,axiom,
    ! [D5: int,A2: set_int,P: int > $o,Q: int > $o] :
      ( ! [X5: int] :
          ( ! [Xa: int] :
              ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb: int] :
                  ( ( member_int @ Xb @ A2 )
                 => ( X5
                   != ( minus_minus_int @ Xb @ Xa ) ) ) )
         => ( ( P @ X5 )
           => ( P @ ( plus_plus_int @ X5 @ D5 ) ) ) )
     => ( ! [X5: int] :
            ( ! [Xa: int] :
                ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb: int] :
                    ( ( member_int @ Xb @ A2 )
                   => ( X5
                     != ( minus_minus_int @ Xb @ Xa ) ) ) )
           => ( ( Q @ X5 )
             => ( Q @ ( plus_plus_int @ X5 @ D5 ) ) ) )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A2 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ( P @ X3 )
                & ( Q @ X3 ) )
             => ( ( P @ ( plus_plus_int @ X3 @ D5 ) )
                & ( Q @ ( plus_plus_int @ X3 @ D5 ) ) ) ) ) ) ) ).

% aset(1)
thf(fact_1224_aset_I2_J,axiom,
    ! [D5: int,A2: set_int,P: int > $o,Q: int > $o] :
      ( ! [X5: int] :
          ( ! [Xa: int] :
              ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb: int] :
                  ( ( member_int @ Xb @ A2 )
                 => ( X5
                   != ( minus_minus_int @ Xb @ Xa ) ) ) )
         => ( ( P @ X5 )
           => ( P @ ( plus_plus_int @ X5 @ D5 ) ) ) )
     => ( ! [X5: int] :
            ( ! [Xa: int] :
                ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb: int] :
                    ( ( member_int @ Xb @ A2 )
                   => ( X5
                     != ( minus_minus_int @ Xb @ Xa ) ) ) )
           => ( ( Q @ X5 )
             => ( Q @ ( plus_plus_int @ X5 @ D5 ) ) ) )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A2 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ( P @ X3 )
                | ( Q @ X3 ) )
             => ( ( P @ ( plus_plus_int @ X3 @ D5 ) )
                | ( Q @ ( plus_plus_int @ X3 @ D5 ) ) ) ) ) ) ) ).

% aset(2)
thf(fact_1225_subset__decode__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_set_nat @ ( nat_set_decode @ M ) @ ( nat_set_decode @ N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% subset_decode_imp_le
thf(fact_1226_numeral__3__eq__3,axiom,
    ( ( numeral_numeral_nat @ ( bit1 @ one ) )
    = ( suc @ ( suc @ ( suc @ zero_zero_nat ) ) ) ) ).

% numeral_3_eq_3
thf(fact_1227_Suc3__eq__add__3,axiom,
    ! [N: nat] :
      ( ( suc @ ( suc @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ).

% Suc3_eq_add_3
thf(fact_1228_bset_I9_J,axiom,
    ! [D: int,D5: int,B2: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ B2 )
                 => ( X3
                   != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ( dvd_dvd_int @ D @ ( plus_plus_int @ X3 @ T ) )
           => ( dvd_dvd_int @ D @ ( plus_plus_int @ ( minus_minus_int @ X3 @ D5 ) @ T ) ) ) ) ) ).

% bset(9)
thf(fact_1229_bset_I10_J,axiom,
    ! [D: int,D5: int,B2: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ B2 )
                 => ( X3
                   != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X3 @ T ) )
           => ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ ( minus_minus_int @ X3 @ D5 ) @ T ) ) ) ) ) ).

% bset(10)
thf(fact_1230_aset_I9_J,axiom,
    ! [D: int,D5: int,A2: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ A2 )
                 => ( X3
                   != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ( dvd_dvd_int @ D @ ( plus_plus_int @ X3 @ T ) )
           => ( dvd_dvd_int @ D @ ( plus_plus_int @ ( plus_plus_int @ X3 @ D5 ) @ T ) ) ) ) ) ).

% aset(9)
thf(fact_1231_aset_I10_J,axiom,
    ! [D: int,D5: int,A2: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ A2 )
                 => ( X3
                   != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X3 @ T ) )
           => ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ ( plus_plus_int @ X3 @ D5 ) @ T ) ) ) ) ) ).

% aset(10)
thf(fact_1232_num_Osize_I6_J,axiom,
    ! [X32: num] :
      ( ( size_size_num @ ( bit1 @ X32 ) )
      = ( plus_plus_nat @ ( size_size_num @ X32 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(6)
thf(fact_1233_periodic__finite__ex,axiom,
    ! [D: int,P: int > $o] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X5: int,K2: int] :
            ( ( P @ X5 )
            = ( P @ ( minus_minus_int @ X5 @ ( times_times_int @ K2 @ D ) ) ) )
       => ( ( ? [X2: int] : ( P @ X2 ) )
          = ( ? [X4: int] :
                ( ( member_int @ X4 @ ( set_or1266510415728281911st_int @ one_one_int @ D ) )
                & ( P @ X4 ) ) ) ) ) ) ).

% periodic_finite_ex
thf(fact_1234_bset_I3_J,axiom,
    ! [D5: int,T: int,B2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ ( minus_minus_int @ T @ one_one_int ) @ B2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B2 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( X3 = T )
             => ( ( minus_minus_int @ X3 @ D5 )
                = T ) ) ) ) ) ).

% bset(3)
thf(fact_1235_bset_I4_J,axiom,
    ! [D5: int,T: int,B2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ T @ B2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B2 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( X3 != T )
             => ( ( minus_minus_int @ X3 @ D5 )
               != T ) ) ) ) ) ).

% bset(4)
thf(fact_1236_bset_I5_J,axiom,
    ! [D5: int,B2: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ B2 )
                 => ( X3
                   != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ( ord_less_int @ X3 @ T )
           => ( ord_less_int @ ( minus_minus_int @ X3 @ D5 ) @ T ) ) ) ) ).

% bset(5)
thf(fact_1237_bset_I7_J,axiom,
    ! [D5: int,T: int,B2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ T @ B2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B2 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ord_less_int @ T @ X3 )
             => ( ord_less_int @ T @ ( minus_minus_int @ X3 @ D5 ) ) ) ) ) ) ).

% bset(7)
thf(fact_1238_aset_I3_J,axiom,
    ! [D5: int,T: int,A2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ ( plus_plus_int @ T @ one_one_int ) @ A2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A2 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( X3 = T )
             => ( ( plus_plus_int @ X3 @ D5 )
                = T ) ) ) ) ) ).

% aset(3)
thf(fact_1239_aset_I4_J,axiom,
    ! [D5: int,T: int,A2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ T @ A2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A2 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( X3 != T )
             => ( ( plus_plus_int @ X3 @ D5 )
               != T ) ) ) ) ) ).

% aset(4)
thf(fact_1240_aset_I5_J,axiom,
    ! [D5: int,T: int,A2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ T @ A2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A2 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ord_less_int @ X3 @ T )
             => ( ord_less_int @ ( plus_plus_int @ X3 @ D5 ) @ T ) ) ) ) ) ).

% aset(5)
thf(fact_1241_aset_I7_J,axiom,
    ! [D5: int,A2: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ A2 )
                 => ( X3
                   != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ( ord_less_int @ T @ X3 )
           => ( ord_less_int @ T @ ( plus_plus_int @ X3 @ D5 ) ) ) ) ) ).

% aset(7)
thf(fact_1242_Suc__div__eq__add3__div,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ N )
      = ( divide_divide_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ N ) ) ).

% Suc_div_eq_add3_div
thf(fact_1243_Suc__mod__eq__add3__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ N )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ N ) ) ).

% Suc_mod_eq_add3_mod
thf(fact_1244_aset_I8_J,axiom,
    ! [D5: int,A2: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ A2 )
                 => ( X3
                   != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ( ord_less_eq_int @ T @ X3 )
           => ( ord_less_eq_int @ T @ ( plus_plus_int @ X3 @ D5 ) ) ) ) ) ).

% aset(8)
thf(fact_1245_aset_I6_J,axiom,
    ! [D5: int,T: int,A2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ ( plus_plus_int @ T @ one_one_int ) @ A2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A2 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ord_less_eq_int @ X3 @ T )
             => ( ord_less_eq_int @ ( plus_plus_int @ X3 @ D5 ) @ T ) ) ) ) ) ).

% aset(6)
thf(fact_1246_bset_I8_J,axiom,
    ! [D5: int,T: int,B2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ( member_int @ ( minus_minus_int @ T @ one_one_int ) @ B2 )
       => ! [X3: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B2 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
           => ( ( ord_less_eq_int @ T @ X3 )
             => ( ord_less_eq_int @ T @ ( minus_minus_int @ X3 @ D5 ) ) ) ) ) ) ).

% bset(8)
thf(fact_1247_bset_I6_J,axiom,
    ! [D5: int,B2: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ! [X3: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ B2 )
                 => ( X3
                   != ( plus_plus_int @ Xb2 @ Xa3 ) ) ) )
         => ( ( ord_less_eq_int @ X3 @ T )
           => ( ord_less_eq_int @ ( minus_minus_int @ X3 @ D5 ) @ T ) ) ) ) ).

% bset(6)
thf(fact_1248_cpmi,axiom,
    ! [D5: int,P: int > $o,P3: int > $o,B2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ? [Z4: int] :
          ! [X5: int] :
            ( ( ord_less_int @ X5 @ Z4 )
           => ( ( P @ X5 )
              = ( P3 @ X5 ) ) )
       => ( ! [X5: int] :
              ( ! [Xa: int] :
                  ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
                 => ! [Xb: int] :
                      ( ( member_int @ Xb @ B2 )
                     => ( X5
                       != ( plus_plus_int @ Xb @ Xa ) ) ) )
             => ( ( P @ X5 )
               => ( P @ ( minus_minus_int @ X5 @ D5 ) ) ) )
         => ( ! [X5: int,K2: int] :
                ( ( P3 @ X5 )
                = ( P3 @ ( minus_minus_int @ X5 @ ( times_times_int @ K2 @ D5 ) ) ) )
           => ( ( ? [X2: int] : ( P @ X2 ) )
              = ( ? [X4: int] :
                    ( ( member_int @ X4 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
                    & ( P3 @ X4 ) )
                | ? [X4: int] :
                    ( ( member_int @ X4 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
                    & ? [Y4: int] :
                        ( ( member_int @ Y4 @ B2 )
                        & ( P @ ( plus_plus_int @ Y4 @ X4 ) ) ) ) ) ) ) ) ) ) ).

% cpmi
thf(fact_1249_cppi,axiom,
    ! [D5: int,P: int > $o,P3: int > $o,A2: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D5 )
     => ( ? [Z4: int] :
          ! [X5: int] :
            ( ( ord_less_int @ Z4 @ X5 )
           => ( ( P @ X5 )
              = ( P3 @ X5 ) ) )
       => ( ! [X5: int] :
              ( ! [Xa: int] :
                  ( ( member_int @ Xa @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
                 => ! [Xb: int] :
                      ( ( member_int @ Xb @ A2 )
                     => ( X5
                       != ( minus_minus_int @ Xb @ Xa ) ) ) )
             => ( ( P @ X5 )
               => ( P @ ( plus_plus_int @ X5 @ D5 ) ) ) )
         => ( ! [X5: int,K2: int] :
                ( ( P3 @ X5 )
                = ( P3 @ ( minus_minus_int @ X5 @ ( times_times_int @ K2 @ D5 ) ) ) )
           => ( ( ? [X2: int] : ( P @ X2 ) )
              = ( ? [X4: int] :
                    ( ( member_int @ X4 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
                    & ( P3 @ X4 ) )
                | ? [X4: int] :
                    ( ( member_int @ X4 @ ( set_or1266510415728281911st_int @ one_one_int @ D5 ) )
                    & ? [Y4: int] :
                        ( ( member_int @ Y4 @ A2 )
                        & ( P @ ( minus_minus_int @ Y4 @ X4 ) ) ) ) ) ) ) ) ) ) ).

% cppi
thf(fact_1250_odd__mod__4__div__2,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( numeral_numeral_nat @ ( bit1 @ one ) ) )
     => ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% odd_mod_4_div_2
thf(fact_1251_set__decode__def,axiom,
    ( nat_set_decode
    = ( ^ [X4: nat] :
          ( collect_nat
          @ ^ [N2: nat] :
              ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) ) ) ) ).

% set_decode_def
thf(fact_1252_mod__exhaust__less__4,axiom,
    ! [M: nat] :
      ( ( ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = zero_zero_nat )
      | ( ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = one_one_nat )
      | ( ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      | ( ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( numeral_numeral_nat @ ( bit1 @ one ) ) ) ) ).

% mod_exhaust_less_4
thf(fact_1253_signed__take__bit__numeral__minus__bit1,axiom,
    ! [L2: num,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( numeral_numeral_nat @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ ( pred_numeral @ L2 ) @ ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_numeral_minus_bit1
thf(fact_1254_signed__take__bit__numeral__bit1,axiom,
    ! [L2: num,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( numeral_numeral_nat @ L2 ) @ ( numeral_numeral_int @ ( bit1 @ K ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ ( pred_numeral @ L2 ) @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_numeral_bit1
thf(fact_1255_pred__numeral__simps_I1_J,axiom,
    ( ( pred_numeral @ one )
    = zero_zero_nat ) ).

% pred_numeral_simps(1)
thf(fact_1256_Suc__eq__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ( suc @ N )
        = ( numeral_numeral_nat @ K ) )
      = ( N
        = ( pred_numeral @ K ) ) ) ).

% Suc_eq_numeral
thf(fact_1257_eq__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ( numeral_numeral_nat @ K )
        = ( suc @ N ) )
      = ( ( pred_numeral @ K )
        = N ) ) ).

% eq_numeral_Suc
thf(fact_1258_less__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_less_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( ord_less_nat @ ( pred_numeral @ K ) @ N ) ) ).

% less_numeral_Suc
thf(fact_1259_less__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_less_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( ord_less_nat @ N @ ( pred_numeral @ K ) ) ) ).

% less_Suc_numeral
thf(fact_1260_pred__numeral__simps_I3_J,axiom,
    ! [K: num] :
      ( ( pred_numeral @ ( bit1 @ K ) )
      = ( numeral_numeral_nat @ ( bit0 @ K ) ) ) ).

% pred_numeral_simps(3)
thf(fact_1261_le__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( ord_less_eq_nat @ ( pred_numeral @ K ) @ N ) ) ).

% le_numeral_Suc
thf(fact_1262_le__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( ord_less_eq_nat @ N @ ( pred_numeral @ K ) ) ) ).

% le_Suc_numeral
thf(fact_1263_diff__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( minus_minus_nat @ ( pred_numeral @ K ) @ N ) ) ).

% diff_numeral_Suc
thf(fact_1264_diff__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( minus_minus_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( minus_minus_nat @ N @ ( pred_numeral @ K ) ) ) ).

% diff_Suc_numeral
thf(fact_1265_max__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_max_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( suc @ ( ord_max_nat @ ( pred_numeral @ K ) @ N ) ) ) ).

% max_numeral_Suc
thf(fact_1266_max__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_max_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( suc @ ( ord_max_nat @ N @ ( pred_numeral @ K ) ) ) ) ).

% max_Suc_numeral
thf(fact_1267_signed__take__bit__numeral__bit0,axiom,
    ! [L2: num,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( numeral_numeral_nat @ L2 ) @ ( numeral_numeral_int @ ( bit0 @ K ) ) )
      = ( times_times_int @ ( bit_ri631733984087533419it_int @ ( pred_numeral @ L2 ) @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% signed_take_bit_numeral_bit0
thf(fact_1268_signed__take__bit__numeral__minus__bit0,axiom,
    ! [L2: num,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( numeral_numeral_nat @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ K ) ) ) )
      = ( times_times_int @ ( bit_ri631733984087533419it_int @ ( pred_numeral @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% signed_take_bit_numeral_minus_bit0
thf(fact_1269_numeral__eq__Suc,axiom,
    ( numeral_numeral_nat
    = ( ^ [K3: num] : ( suc @ ( pred_numeral @ K3 ) ) ) ) ).

% numeral_eq_Suc
thf(fact_1270_pred__numeral__def,axiom,
    ( pred_numeral
    = ( ^ [K3: num] : ( minus_minus_nat @ ( numeral_numeral_nat @ K3 ) @ one_one_nat ) ) ) ).

% pred_numeral_def
thf(fact_1271_divmod__int__def,axiom,
    ( unique5052692396658037445od_int
    = ( ^ [M6: num,N2: num] : ( product_Pair_int_int @ ( divide_divide_int @ ( numeral_numeral_int @ M6 ) @ ( numeral_numeral_int @ N2 ) ) @ ( modulo_modulo_int @ ( numeral_numeral_int @ M6 ) @ ( numeral_numeral_int @ N2 ) ) ) ) ) ).

% divmod_int_def
thf(fact_1272_divmod_H__nat__def,axiom,
    ( unique5055182867167087721od_nat
    = ( ^ [M6: num,N2: num] : ( product_Pair_nat_nat @ ( divide_divide_nat @ ( numeral_numeral_nat @ M6 ) @ ( numeral_numeral_nat @ N2 ) ) @ ( modulo_modulo_nat @ ( numeral_numeral_nat @ M6 ) @ ( numeral_numeral_nat @ N2 ) ) ) ) ) ).

% divmod'_nat_def
thf(fact_1273_eq__diff__eq_H,axiom,
    ! [X: real,Y2: real,Z: real] :
      ( ( X
        = ( minus_minus_real @ Y2 @ Z ) )
      = ( Y2
        = ( plus_plus_real @ X @ Z ) ) ) ).

% eq_diff_eq'
thf(fact_1274_one__div__minus__numeral,axiom,
    ! [N: num] :
      ( ( divide_divide_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( adjust_div @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ).

% one_div_minus_numeral
thf(fact_1275_minus__one__div__numeral,axiom,
    ! [N: num] :
      ( ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( adjust_div @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ).

% minus_one_div_numeral
thf(fact_1276_numeral__div__minus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( divide_divide_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( adjust_div @ ( unique5052692396658037445od_int @ M @ N ) ) ) ) ).

% numeral_div_minus_numeral
thf(fact_1277_minus__numeral__div__numeral,axiom,
    ! [M: num,N: num] :
      ( ( divide_divide_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( adjust_div @ ( unique5052692396658037445od_int @ M @ N ) ) ) ) ).

% minus_numeral_div_numeral
thf(fact_1278_Divides_Oadjust__div__eq,axiom,
    ! [Q2: int,R2: int] :
      ( ( adjust_div @ ( product_Pair_int_int @ Q2 @ R2 ) )
      = ( plus_plus_int @ Q2 @ ( zero_n2684676970156552555ol_int @ ( R2 != zero_zero_int ) ) ) ) ).

% Divides.adjust_div_eq
thf(fact_1279_divmod__BitM__2__eq,axiom,
    ! [M: num] :
      ( ( unique5052692396658037445od_int @ ( bitM @ M ) @ ( bit0 @ one ) )
      = ( product_Pair_int_int @ ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ one_one_int ) ) ).

% divmod_BitM_2_eq
thf(fact_1280_Sum__Icc__int,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ M @ N )
     => ( ( groups4538972089207619220nt_int
          @ ^ [X4: int] : X4
          @ ( set_or1266510415728281911st_int @ M @ N ) )
        = ( divide_divide_int @ ( minus_minus_int @ ( times_times_int @ N @ ( plus_plus_int @ N @ one_one_int ) ) @ ( times_times_int @ M @ ( minus_minus_int @ M @ one_one_int ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% Sum_Icc_int
thf(fact_1281_pred__numeral__simps_I2_J,axiom,
    ! [K: num] :
      ( ( pred_numeral @ ( bit0 @ K ) )
      = ( numeral_numeral_nat @ ( bitM @ K ) ) ) ).

% pred_numeral_simps(2)
thf(fact_1282_semiring__norm_I26_J,axiom,
    ( ( bitM @ one )
    = one ) ).

% semiring_norm(26)
thf(fact_1283_semiring__norm_I27_J,axiom,
    ! [N: num] :
      ( ( bitM @ ( bit0 @ N ) )
      = ( bit1 @ ( bitM @ N ) ) ) ).

% semiring_norm(27)
thf(fact_1284_semiring__norm_I28_J,axiom,
    ! [N: num] :
      ( ( bitM @ ( bit1 @ N ) )
      = ( bit1 @ ( bit0 @ N ) ) ) ).

% semiring_norm(28)
thf(fact_1285_real__of__int__div4,axiom,
    ! [N: int,X: int] : ( ord_less_eq_real @ ( ring_1_of_int_real @ ( divide_divide_int @ N @ X ) ) @ ( divide_divide_real @ ( ring_1_of_int_real @ N ) @ ( ring_1_of_int_real @ X ) ) ) ).

% real_of_int_div4
thf(fact_1286_real__of__int__div,axiom,
    ! [D: int,N: int] :
      ( ( dvd_dvd_int @ D @ N )
     => ( ( ring_1_of_int_real @ ( divide_divide_int @ N @ D ) )
        = ( divide_divide_real @ ( ring_1_of_int_real @ N ) @ ( ring_1_of_int_real @ D ) ) ) ) ).

% real_of_int_div
thf(fact_1287_eval__nat__numeral_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( suc @ ( numeral_numeral_nat @ ( bitM @ N ) ) ) ) ).

% eval_nat_numeral(2)
thf(fact_1288_one__plus__BitM,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bitM @ N ) )
      = ( bit0 @ N ) ) ).

% one_plus_BitM
thf(fact_1289_BitM__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ ( bitM @ N ) @ one )
      = ( bit0 @ N ) ) ).

% BitM_plus_one
thf(fact_1290_int__le__real__less,axiom,
    ( ord_less_eq_int
    = ( ^ [N2: int,M6: int] : ( ord_less_real @ ( ring_1_of_int_real @ N2 ) @ ( plus_plus_real @ ( ring_1_of_int_real @ M6 ) @ one_one_real ) ) ) ) ).

% int_le_real_less
thf(fact_1291_int__less__real__le,axiom,
    ( ord_less_int
    = ( ^ [N2: int,M6: int] : ( ord_less_eq_real @ ( plus_plus_real @ ( ring_1_of_int_real @ N2 ) @ one_one_real ) @ ( ring_1_of_int_real @ M6 ) ) ) ) ).

% int_less_real_le
thf(fact_1292_real__of__int__div__aux,axiom,
    ! [X: int,D: int] :
      ( ( divide_divide_real @ ( ring_1_of_int_real @ X ) @ ( ring_1_of_int_real @ D ) )
      = ( plus_plus_real @ ( ring_1_of_int_real @ ( divide_divide_int @ X @ D ) ) @ ( divide_divide_real @ ( ring_1_of_int_real @ ( modulo_modulo_int @ X @ D ) ) @ ( ring_1_of_int_real @ D ) ) ) ) ).

% real_of_int_div_aux
thf(fact_1293_real__of__int__div2,axiom,
    ! [N: int,X: int] : ( ord_less_eq_real @ zero_zero_real @ ( minus_minus_real @ ( divide_divide_real @ ( ring_1_of_int_real @ N ) @ ( ring_1_of_int_real @ X ) ) @ ( ring_1_of_int_real @ ( divide_divide_int @ N @ X ) ) ) ) ).

% real_of_int_div2
thf(fact_1294_real__of__int__div3,axiom,
    ! [N: int,X: int] : ( ord_less_eq_real @ ( minus_minus_real @ ( divide_divide_real @ ( ring_1_of_int_real @ N ) @ ( ring_1_of_int_real @ X ) ) @ ( ring_1_of_int_real @ ( divide_divide_int @ N @ X ) ) ) @ one_one_real ) ).

% real_of_int_div3
thf(fact_1295_divmod__step__nat__def,axiom,
    ( unique5026877609467782581ep_nat
    = ( ^ [L: num] :
          ( produc2626176000494625587at_nat
          @ ^ [Q4: nat,R5: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ ( numeral_numeral_nat @ L ) @ R5 ) @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q4 ) @ one_one_nat ) @ ( minus_minus_nat @ R5 @ ( numeral_numeral_nat @ L ) ) ) @ ( product_Pair_nat_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q4 ) @ R5 ) ) ) ) ) ).

% divmod_step_nat_def
thf(fact_1296_divmod__step__int__def,axiom,
    ( unique5024387138958732305ep_int
    = ( ^ [L: num] :
          ( produc4245557441103728435nt_int
          @ ^ [Q4: int,R5: int] : ( if_Pro3027730157355071871nt_int @ ( ord_less_eq_int @ ( numeral_numeral_int @ L ) @ R5 ) @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q4 ) @ one_one_int ) @ ( minus_minus_int @ R5 @ ( numeral_numeral_int @ L ) ) ) @ ( product_Pair_int_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q4 ) @ R5 ) ) ) ) ) ).

% divmod_step_int_def
thf(fact_1297_divmod__nat__if,axiom,
    ( divmod_nat
    = ( ^ [M6: nat,N2: nat] :
          ( if_Pro6206227464963214023at_nat
          @ ( ( N2 = zero_zero_nat )
            | ( ord_less_nat @ M6 @ N2 ) )
          @ ( product_Pair_nat_nat @ zero_zero_nat @ M6 )
          @ ( produc2626176000494625587at_nat
            @ ^ [Q4: nat] : ( product_Pair_nat_nat @ ( suc @ Q4 ) )
            @ ( divmod_nat @ ( minus_minus_nat @ M6 @ N2 ) @ N2 ) ) ) ) ) ).

% divmod_nat_if
thf(fact_1298_mask__nat__positive__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( bit_se2002935070580805687sk_nat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% mask_nat_positive_iff
thf(fact_1299_less__eq__mask,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ ( bit_se2002935070580805687sk_nat @ N ) ) ).

% less_eq_mask
thf(fact_1300_mask__nonnegative__int,axiom,
    ! [N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( bit_se2000444600071755411sk_int @ N ) ) ).

% mask_nonnegative_int
thf(fact_1301_not__mask__negative__int,axiom,
    ! [N: nat] :
      ~ ( ord_less_int @ ( bit_se2000444600071755411sk_int @ N ) @ zero_zero_int ) ).

% not_mask_negative_int
thf(fact_1302_less__mask,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ N @ ( bit_se2002935070580805687sk_nat @ N ) ) ) ).

% less_mask
thf(fact_1303_Suc__mask__eq__exp,axiom,
    ! [N: nat] :
      ( ( suc @ ( bit_se2002935070580805687sk_nat @ N ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% Suc_mask_eq_exp
thf(fact_1304_mask__nat__less__exp,axiom,
    ! [N: nat] : ( ord_less_nat @ ( bit_se2002935070580805687sk_nat @ N ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% mask_nat_less_exp
thf(fact_1305_mask__nat__def,axiom,
    ( bit_se2002935070580805687sk_nat
    = ( ^ [N2: nat] : ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ one_one_nat ) ) ) ).

% mask_nat_def
thf(fact_1306_mask__half__int,axiom,
    ! [N: nat] :
      ( ( divide_divide_int @ ( bit_se2000444600071755411sk_int @ N ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
      = ( bit_se2000444600071755411sk_int @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% mask_half_int
thf(fact_1307_exists__least__lemma,axiom,
    ! [P: nat > $o] :
      ( ~ ( P @ zero_zero_nat )
     => ( ? [X_1: nat] : ( P @ X_1 )
       => ? [N4: nat] :
            ( ~ ( P @ N4 )
            & ( P @ ( suc @ N4 ) ) ) ) ) ).

% exists_least_lemma
thf(fact_1308_mask__int__def,axiom,
    ( bit_se2000444600071755411sk_int
    = ( ^ [N2: nat] : ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) @ one_one_int ) ) ) ).

% mask_int_def
thf(fact_1309_divmod__nat__def,axiom,
    ( divmod_nat
    = ( ^ [M6: nat,N2: nat] : ( product_Pair_nat_nat @ ( divide_divide_nat @ M6 @ N2 ) @ ( modulo_modulo_nat @ M6 @ N2 ) ) ) ) ).

% divmod_nat_def
thf(fact_1310_mask__eq__sum__exp__nat,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ ( suc @ zero_zero_nat ) )
      = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        @ ( collect_nat
          @ ^ [Q4: nat] : ( ord_less_nat @ Q4 @ N ) ) ) ) ).

% mask_eq_sum_exp_nat
thf(fact_1311_gauss__sum__nat,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ N @ ( suc @ N ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% gauss_sum_nat
thf(fact_1312_arith__series__nat,axiom,
    ! [A: nat,D: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I4: nat] : ( plus_plus_nat @ A @ ( times_times_nat @ I4 @ D ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ ( suc @ N ) @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ ( times_times_nat @ N @ D ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% arith_series_nat
thf(fact_1313_Sum__Icc__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or1269000886237332187st_nat @ M @ N ) )
      = ( divide_divide_nat @ ( minus_minus_nat @ ( times_times_nat @ N @ ( plus_plus_nat @ N @ one_one_nat ) ) @ ( times_times_nat @ M @ ( minus_minus_nat @ M @ one_one_nat ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Sum_Icc_nat
thf(fact_1314_or__int__unfold,axiom,
    ( bit_se1409905431419307370or_int
    = ( ^ [K3: int,L: int] :
          ( if_int
          @ ( ( K3
              = ( uminus_uminus_int @ one_one_int ) )
            | ( L
              = ( uminus_uminus_int @ one_one_int ) ) )
          @ ( uminus_uminus_int @ one_one_int )
          @ ( if_int @ ( K3 = zero_zero_int ) @ L @ ( if_int @ ( L = zero_zero_int ) @ K3 @ ( plus_plus_int @ ( ord_max_int @ ( modulo_modulo_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% or_int_unfold
thf(fact_1315_int__eq__iff__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = ( numeral_numeral_int @ V ) )
      = ( M
        = ( numeral_numeral_nat @ V ) ) ) ).

% int_eq_iff_numeral
thf(fact_1316_negative__zle,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ ( semiri1314217659103216013at_int @ M ) ) ).

% negative_zle
thf(fact_1317_negative__zless,axiom,
    ! [N: nat,M: nat] : ( ord_less_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) @ ( semiri1314217659103216013at_int @ M ) ) ).

% negative_zless
thf(fact_1318_or__nonnegative__int__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se1409905431419307370or_int @ K @ L2 ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        & ( ord_less_eq_int @ zero_zero_int @ L2 ) ) ) ).

% or_nonnegative_int_iff
thf(fact_1319_or__negative__int__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_int @ ( bit_se1409905431419307370or_int @ K @ L2 ) @ zero_zero_int )
      = ( ( ord_less_int @ K @ zero_zero_int )
        | ( ord_less_int @ L2 @ zero_zero_int ) ) ) ).

% or_negative_int_iff
thf(fact_1320_real__of__nat__less__numeral__iff,axiom,
    ! [N: nat,W: num] :
      ( ( ord_less_real @ ( semiri5074537144036343181t_real @ N ) @ ( numeral_numeral_real @ W ) )
      = ( ord_less_nat @ N @ ( numeral_numeral_nat @ W ) ) ) ).

% real_of_nat_less_numeral_iff
thf(fact_1321_numeral__less__real__of__nat__iff,axiom,
    ! [W: num,N: nat] :
      ( ( ord_less_real @ ( numeral_numeral_real @ W ) @ ( semiri5074537144036343181t_real @ N ) )
      = ( ord_less_nat @ ( numeral_numeral_nat @ W ) @ N ) ) ).

% numeral_less_real_of_nat_iff
thf(fact_1322_numeral__le__real__of__nat__iff,axiom,
    ! [N: num,M: nat] :
      ( ( ord_less_eq_real @ ( numeral_numeral_real @ N ) @ ( semiri5074537144036343181t_real @ M ) )
      = ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ M ) ) ).

% numeral_le_real_of_nat_iff
thf(fact_1323_or__minus__numerals_I6_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ one_one_int )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) ) ).

% or_minus_numerals(6)
thf(fact_1324_or__minus__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) ) ).

% or_minus_numerals(2)
thf(fact_1325_or__greater__eq,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ L2 )
     => ( ord_less_eq_int @ K @ ( bit_se1409905431419307370or_int @ K @ L2 ) ) ) ).

% or_greater_eq
thf(fact_1326_OR__lower,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
       => ( ord_less_eq_int @ zero_zero_int @ ( bit_se1409905431419307370or_int @ X @ Y2 ) ) ) ) ).

% OR_lower
thf(fact_1327_int__ops_I3_J,axiom,
    ! [N: num] :
      ( ( semiri1314217659103216013at_int @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_int @ N ) ) ).

% int_ops(3)
thf(fact_1328_nat__int__comparison_I2_J,axiom,
    ( ord_less_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_int_comparison(2)
thf(fact_1329_int__cases,axiom,
    ! [Z: int] :
      ( ! [N4: nat] :
          ( Z
         != ( semiri1314217659103216013at_int @ N4 ) )
     => ~ ! [N4: nat] :
            ( Z
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N4 ) ) ) ) ) ).

% int_cases
thf(fact_1330_int__of__nat__induct,axiom,
    ! [P: int > $o,Z: int] :
      ( ! [N4: nat] : ( P @ ( semiri1314217659103216013at_int @ N4 ) )
     => ( ! [N4: nat] : ( P @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N4 ) ) ) )
       => ( P @ Z ) ) ) ).

% int_of_nat_induct
thf(fact_1331_nat__int__comparison_I3_J,axiom,
    ( ord_less_eq_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_int_comparison(3)
thf(fact_1332_zle__int,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% zle_int
thf(fact_1333_zero__le__imp__eq__int,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ? [N4: nat] :
          ( K
          = ( semiri1314217659103216013at_int @ N4 ) ) ) ).

% zero_le_imp_eq_int
thf(fact_1334_nonneg__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ~ ! [N4: nat] :
            ( K
           != ( semiri1314217659103216013at_int @ N4 ) ) ) ).

% nonneg_int_cases
thf(fact_1335_int__ops_I5_J,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ A @ B ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% int_ops(5)
thf(fact_1336_int__plus,axiom,
    ! [N: nat,M: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ N @ M ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ ( semiri1314217659103216013at_int @ M ) ) ) ).

% int_plus
thf(fact_1337_zadd__int__left,axiom,
    ! [M: nat,N: nat,Z: int] :
      ( ( plus_plus_int @ ( semiri1314217659103216013at_int @ M ) @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ Z ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ ( plus_plus_nat @ M @ N ) ) @ Z ) ) ).

% zadd_int_left
thf(fact_1338_int__ops_I7_J,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( times_times_nat @ A @ B ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% int_ops(7)
thf(fact_1339_int__ops_I2_J,axiom,
    ( ( semiri1314217659103216013at_int @ one_one_nat )
    = one_one_int ) ).

% int_ops(2)
thf(fact_1340_zle__iff__zadd,axiom,
    ( ord_less_eq_int
    = ( ^ [W3: int,Z5: int] :
        ? [N2: nat] :
          ( Z5
          = ( plus_plus_int @ W3 @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ) ).

% zle_iff_zadd
thf(fact_1341_zdiv__int,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( divide_divide_nat @ A @ B ) )
      = ( divide_divide_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% zdiv_int
thf(fact_1342_nat__less__as__int,axiom,
    ( ord_less_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_less_as_int
thf(fact_1343_nat__leq__as__int,axiom,
    ( ord_less_eq_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_leq_as_int
thf(fact_1344_reals__Archimedean3,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ! [Y: real] :
        ? [N4: nat] : ( ord_less_real @ Y @ ( times_times_real @ ( semiri5074537144036343181t_real @ N4 ) @ X ) ) ) ).

% reals_Archimedean3
thf(fact_1345_int__cases4,axiom,
    ! [M: int] :
      ( ! [N4: nat] :
          ( M
         != ( semiri1314217659103216013at_int @ N4 ) )
     => ~ ! [N4: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N4 )
           => ( M
             != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N4 ) ) ) ) ) ).

% int_cases4
thf(fact_1346_real__of__nat__div4,axiom,
    ! [N: nat,X: nat] : ( ord_less_eq_real @ ( semiri5074537144036343181t_real @ ( divide_divide_nat @ N @ X ) ) @ ( divide_divide_real @ ( semiri5074537144036343181t_real @ N ) @ ( semiri5074537144036343181t_real @ X ) ) ) ).

% real_of_nat_div4
thf(fact_1347_int__zle__neg,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ N ) @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ M ) ) )
      = ( ( N = zero_zero_nat )
        & ( M = zero_zero_nat ) ) ) ).

% int_zle_neg
thf(fact_1348_int__Suc,axiom,
    ! [N: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ N ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) ).

% int_Suc
thf(fact_1349_int__ops_I4_J,axiom,
    ! [A: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ A ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ one_one_int ) ) ).

% int_ops(4)
thf(fact_1350_zless__iff__Suc__zadd,axiom,
    ( ord_less_int
    = ( ^ [W3: int,Z5: int] :
        ? [N2: nat] :
          ( Z5
          = ( plus_plus_int @ W3 @ ( semiri1314217659103216013at_int @ ( suc @ N2 ) ) ) ) ) ) ).

% zless_iff_Suc_zadd
thf(fact_1351_nonpos__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ K @ zero_zero_int )
     => ~ ! [N4: nat] :
            ( K
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N4 ) ) ) ) ).

% nonpos_int_cases
thf(fact_1352_negative__zle__0,axiom,
    ! [N: nat] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ zero_zero_int ) ).

% negative_zle_0
thf(fact_1353_real__of__nat__div,axiom,
    ! [D: nat,N: nat] :
      ( ( dvd_dvd_nat @ D @ N )
     => ( ( semiri5074537144036343181t_real @ ( divide_divide_nat @ N @ D ) )
        = ( divide_divide_real @ ( semiri5074537144036343181t_real @ N ) @ ( semiri5074537144036343181t_real @ D ) ) ) ) ).

% real_of_nat_div
thf(fact_1354_pos__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ~ ! [N4: nat] :
            ( ( K
              = ( semiri1314217659103216013at_int @ N4 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N4 ) ) ) ).

% pos_int_cases
thf(fact_1355_zero__less__imp__eq__int,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ? [N4: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ N4 )
          & ( K
            = ( semiri1314217659103216013at_int @ N4 ) ) ) ) ).

% zero_less_imp_eq_int
thf(fact_1356_int__cases3,axiom,
    ! [K: int] :
      ( ( K != zero_zero_int )
     => ( ! [N4: nat] :
            ( ( K
              = ( semiri1314217659103216013at_int @ N4 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N4 ) )
       => ~ ! [N4: nat] :
              ( ( K
                = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N4 ) ) )
             => ~ ( ord_less_nat @ zero_zero_nat @ N4 ) ) ) ) ).

% int_cases3
thf(fact_1357_nat__less__real__le,axiom,
    ( ord_less_nat
    = ( ^ [N2: nat,M6: nat] : ( ord_less_eq_real @ ( plus_plus_real @ ( semiri5074537144036343181t_real @ N2 ) @ one_one_real ) @ ( semiri5074537144036343181t_real @ M6 ) ) ) ) ).

% nat_less_real_le
thf(fact_1358_nat__le__real__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [N2: nat,M6: nat] : ( ord_less_real @ ( semiri5074537144036343181t_real @ N2 ) @ ( plus_plus_real @ ( semiri5074537144036343181t_real @ M6 ) @ one_one_real ) ) ) ) ).

% nat_le_real_less
thf(fact_1359_zmult__zless__mono2__lemma,axiom,
    ! [I2: int,J: int,K: nat] :
      ( ( ord_less_int @ I2 @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ K ) @ I2 ) @ ( times_times_int @ ( semiri1314217659103216013at_int @ K ) @ J ) ) ) ) ).

% zmult_zless_mono2_lemma
thf(fact_1360_not__zle__0__negative,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) ) ).

% not_zle_0_negative
thf(fact_1361_negD,axiom,
    ! [X: int] :
      ( ( ord_less_int @ X @ zero_zero_int )
     => ? [N4: nat] :
          ( X
          = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N4 ) ) ) ) ) ).

% negD
thf(fact_1362_negative__zless__0,axiom,
    ! [N: nat] : ( ord_less_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) @ zero_zero_int ) ).

% negative_zless_0
thf(fact_1363_real__of__nat__div__aux,axiom,
    ! [X: nat,D: nat] :
      ( ( divide_divide_real @ ( semiri5074537144036343181t_real @ X ) @ ( semiri5074537144036343181t_real @ D ) )
      = ( plus_plus_real @ ( semiri5074537144036343181t_real @ ( divide_divide_nat @ X @ D ) ) @ ( divide_divide_real @ ( semiri5074537144036343181t_real @ ( modulo_modulo_nat @ X @ D ) ) @ ( semiri5074537144036343181t_real @ D ) ) ) ) ).

% real_of_nat_div_aux
thf(fact_1364_real__archimedian__rdiv__eq__0,axiom,
    ! [X: real,C: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ C )
       => ( ! [M5: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ M5 )
             => ( ord_less_eq_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ M5 ) @ X ) @ C ) )
         => ( X = zero_zero_real ) ) ) ) ).

% real_archimedian_rdiv_eq_0
thf(fact_1365_neg__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ~ ! [N4: nat] :
            ( ( K
              = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N4 ) ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N4 ) ) ) ).

% neg_int_cases
thf(fact_1366_zdiff__int__split,axiom,
    ! [P: int > $o,X: nat,Y2: nat] :
      ( ( P @ ( semiri1314217659103216013at_int @ ( minus_minus_nat @ X @ Y2 ) ) )
      = ( ( ( ord_less_eq_nat @ Y2 @ X )
         => ( P @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ X ) @ ( semiri1314217659103216013at_int @ Y2 ) ) ) )
        & ( ( ord_less_nat @ X @ Y2 )
         => ( P @ zero_zero_int ) ) ) ) ).

% zdiff_int_split
thf(fact_1367_real__of__nat__div2,axiom,
    ! [N: nat,X: nat] : ( ord_less_eq_real @ zero_zero_real @ ( minus_minus_real @ ( divide_divide_real @ ( semiri5074537144036343181t_real @ N ) @ ( semiri5074537144036343181t_real @ X ) ) @ ( semiri5074537144036343181t_real @ ( divide_divide_nat @ N @ X ) ) ) ) ).

% real_of_nat_div2
thf(fact_1368_real__of__nat__div3,axiom,
    ! [N: nat,X: nat] : ( ord_less_eq_real @ ( minus_minus_real @ ( divide_divide_real @ ( semiri5074537144036343181t_real @ N ) @ ( semiri5074537144036343181t_real @ X ) ) @ ( semiri5074537144036343181t_real @ ( divide_divide_nat @ N @ X ) ) ) @ one_one_real ) ).

% real_of_nat_div3
thf(fact_1369_linear__plus__1__le__power,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( plus_plus_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ X ) @ one_one_real ) @ ( power_power_real @ ( plus_plus_real @ X @ one_one_real ) @ N ) ) ) ).

% linear_plus_1_le_power
thf(fact_1370_Bernoulli__inequality,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ord_less_eq_real @ ( plus_plus_real @ one_one_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ X ) ) @ ( power_power_real @ ( plus_plus_real @ one_one_real @ X ) @ N ) ) ) ).

% Bernoulli_inequality
thf(fact_1371_OR__upper,axiom,
    ! [X: int,N: nat,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_int @ X @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( ord_less_int @ Y2 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
         => ( ord_less_int @ ( bit_se1409905431419307370or_int @ X @ Y2 ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% OR_upper
thf(fact_1372_or__int__rec,axiom,
    ( bit_se1409905431419307370or_int
    = ( ^ [K3: int,L: int] :
          ( plus_plus_int
          @ ( zero_n2684676970156552555ol_int
            @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K3 )
              | ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) )
          @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% or_int_rec
thf(fact_1373_Bernoulli__inequality__even,axiom,
    ! [N: nat,X: real] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_eq_real @ ( plus_plus_real @ one_one_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ X ) ) @ ( power_power_real @ ( plus_plus_real @ one_one_real @ X ) @ N ) ) ) ).

% Bernoulli_inequality_even
thf(fact_1374_or__minus__numerals_I1_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ one @ ( bitM @ N ) ) ) ) ) ).

% or_minus_numerals(1)
thf(fact_1375_or__minus__numerals_I5_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ one_one_int )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ one @ ( bitM @ N ) ) ) ) ) ).

% or_minus_numerals(5)
thf(fact_1376_or__nat__numerals_I4_J,axiom,
    ! [X: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% or_nat_numerals(4)
thf(fact_1377_or__nat__numerals_I2_J,axiom,
    ! [Y2: num] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y2 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y2 ) ) ) ).

% or_nat_numerals(2)
thf(fact_1378_or__nat__numerals_I3_J,axiom,
    ! [X: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% or_nat_numerals(3)
thf(fact_1379_or__nat__numerals_I1_J,axiom,
    ! [Y2: num] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y2 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y2 ) ) ) ).

% or_nat_numerals(1)
thf(fact_1380_or__minus__numerals_I8_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ M @ ( bit0 @ N ) ) ) ) ) ).

% or_minus_numerals(8)
thf(fact_1381_or__minus__numerals_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ M @ ( bit0 @ N ) ) ) ) ) ).

% or_minus_numerals(4)
thf(fact_1382_or__minus__numerals_I7_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ M @ ( bitM @ N ) ) ) ) ) ).

% or_minus_numerals(7)
thf(fact_1383_or__minus__numerals_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ M @ ( bitM @ N ) ) ) ) ) ).

% or_minus_numerals(3)
thf(fact_1384_or__not__num__neg_Osimps_I1_J,axiom,
    ( ( bit_or_not_num_neg @ one @ one )
    = one ) ).

% or_not_num_neg.simps(1)
thf(fact_1385_or__not__num__neg_Osimps_I4_J,axiom,
    ! [N: num] :
      ( ( bit_or_not_num_neg @ ( bit0 @ N ) @ one )
      = ( bit0 @ one ) ) ).

% or_not_num_neg.simps(4)
thf(fact_1386_or__not__num__neg_Osimps_I6_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_or_not_num_neg @ ( bit0 @ N ) @ ( bit1 @ M ) )
      = ( bit0 @ ( bit_or_not_num_neg @ N @ M ) ) ) ).

% or_not_num_neg.simps(6)
thf(fact_1387_or__not__num__neg_Osimps_I7_J,axiom,
    ! [N: num] :
      ( ( bit_or_not_num_neg @ ( bit1 @ N ) @ one )
      = one ) ).

% or_not_num_neg.simps(7)
thf(fact_1388_or__not__num__neg_Osimps_I3_J,axiom,
    ! [M: num] :
      ( ( bit_or_not_num_neg @ one @ ( bit1 @ M ) )
      = ( bit1 @ M ) ) ).

% or_not_num_neg.simps(3)
thf(fact_1389_or__not__num__neg_Osimps_I5_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_or_not_num_neg @ ( bit0 @ N ) @ ( bit0 @ M ) )
      = ( bitM @ ( bit_or_not_num_neg @ N @ M ) ) ) ).

% or_not_num_neg.simps(5)
thf(fact_1390_or__not__num__neg_Osimps_I9_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_or_not_num_neg @ ( bit1 @ N ) @ ( bit1 @ M ) )
      = ( bitM @ ( bit_or_not_num_neg @ N @ M ) ) ) ).

% or_not_num_neg.simps(9)
thf(fact_1391_or__not__num__neg_Osimps_I2_J,axiom,
    ! [M: num] :
      ( ( bit_or_not_num_neg @ one @ ( bit0 @ M ) )
      = ( bit1 @ M ) ) ).

% or_not_num_neg.simps(2)
thf(fact_1392_or__not__num__neg_Osimps_I8_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_or_not_num_neg @ ( bit1 @ N ) @ ( bit0 @ M ) )
      = ( bitM @ ( bit_or_not_num_neg @ N @ M ) ) ) ).

% or_not_num_neg.simps(8)
thf(fact_1393_or__not__num__neg_Oelims,axiom,
    ! [X: num,Xa2: num,Y2: num] :
      ( ( ( bit_or_not_num_neg @ X @ Xa2 )
        = Y2 )
     => ( ( ( X = one )
         => ( ( Xa2 = one )
           => ( Y2 != one ) ) )
       => ( ( ( X = one )
           => ! [M5: num] :
                ( ( Xa2
                  = ( bit0 @ M5 ) )
               => ( Y2
                 != ( bit1 @ M5 ) ) ) )
         => ( ( ( X = one )
             => ! [M5: num] :
                  ( ( Xa2
                    = ( bit1 @ M5 ) )
                 => ( Y2
                   != ( bit1 @ M5 ) ) ) )
           => ( ( ? [N4: num] :
                    ( X
                    = ( bit0 @ N4 ) )
               => ( ( Xa2 = one )
                 => ( Y2
                   != ( bit0 @ one ) ) ) )
             => ( ! [N4: num] :
                    ( ( X
                      = ( bit0 @ N4 ) )
                   => ! [M5: num] :
                        ( ( Xa2
                          = ( bit0 @ M5 ) )
                       => ( Y2
                         != ( bitM @ ( bit_or_not_num_neg @ N4 @ M5 ) ) ) ) )
               => ( ! [N4: num] :
                      ( ( X
                        = ( bit0 @ N4 ) )
                     => ! [M5: num] :
                          ( ( Xa2
                            = ( bit1 @ M5 ) )
                         => ( Y2
                           != ( bit0 @ ( bit_or_not_num_neg @ N4 @ M5 ) ) ) ) )
                 => ( ( ? [N4: num] :
                          ( X
                          = ( bit1 @ N4 ) )
                     => ( ( Xa2 = one )
                       => ( Y2 != one ) ) )
                   => ( ! [N4: num] :
                          ( ( X
                            = ( bit1 @ N4 ) )
                         => ! [M5: num] :
                              ( ( Xa2
                                = ( bit0 @ M5 ) )
                             => ( Y2
                               != ( bitM @ ( bit_or_not_num_neg @ N4 @ M5 ) ) ) ) )
                     => ~ ! [N4: num] :
                            ( ( X
                              = ( bit1 @ N4 ) )
                           => ! [M5: num] :
                                ( ( Xa2
                                  = ( bit1 @ M5 ) )
                               => ( Y2
                                 != ( bitM @ ( bit_or_not_num_neg @ N4 @ M5 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% or_not_num_neg.elims
thf(fact_1394_Suc__0__or__eq,axiom,
    ! [N: nat] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% Suc_0_or_eq
thf(fact_1395_or__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se1412395901928357646or_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% or_Suc_0_eq
thf(fact_1396_or__nat__rec,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M6: nat,N2: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M6 )
              | ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( divide_divide_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% or_nat_rec
thf(fact_1397_or__nat__unfold,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M6: nat,N2: nat] : ( if_nat @ ( M6 = zero_zero_nat ) @ N2 @ ( if_nat @ ( N2 = zero_zero_nat ) @ M6 @ ( plus_plus_nat @ ( ord_max_nat @ ( modulo_modulo_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( divide_divide_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% or_nat_unfold
thf(fact_1398_ln__one__minus__pos__lower__bound,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_eq_real @ ( minus_minus_real @ ( uminus_uminus_real @ X ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( ln_ln_real @ ( minus_minus_real @ one_one_real @ X ) ) ) ) ) ).

% ln_one_minus_pos_lower_bound
thf(fact_1399_ln__le__cancel__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ zero_zero_real @ Y2 )
       => ( ( ord_less_eq_real @ ( ln_ln_real @ X ) @ ( ln_ln_real @ Y2 ) )
          = ( ord_less_eq_real @ X @ Y2 ) ) ) ) ).

% ln_le_cancel_iff
thf(fact_1400_ln__eq__zero__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ( ln_ln_real @ X )
          = zero_zero_real )
        = ( X = one_one_real ) ) ) ).

% ln_eq_zero_iff
thf(fact_1401_ln__gt__zero__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ zero_zero_real @ ( ln_ln_real @ X ) )
        = ( ord_less_real @ one_one_real @ X ) ) ) ).

% ln_gt_zero_iff
thf(fact_1402_ln__less__zero__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ ( ln_ln_real @ X ) @ zero_zero_real )
        = ( ord_less_real @ X @ one_one_real ) ) ) ).

% ln_less_zero_iff
thf(fact_1403_ln__ge__zero__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ ( ln_ln_real @ X ) )
        = ( ord_less_eq_real @ one_one_real @ X ) ) ) ).

% ln_ge_zero_iff
thf(fact_1404_ln__le__zero__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ ( ln_ln_real @ X ) @ zero_zero_real )
        = ( ord_less_eq_real @ X @ one_one_real ) ) ) ).

% ln_le_zero_iff
thf(fact_1405_ln__bound,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( ln_ln_real @ X ) @ X ) ) ).

% ln_bound
thf(fact_1406_ln__gt__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( ord_less_real @ zero_zero_real @ ( ln_ln_real @ X ) ) ) ).

% ln_gt_zero
thf(fact_1407_ln__less__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( ord_less_real @ ( ln_ln_real @ X ) @ zero_zero_real ) ) ) ).

% ln_less_zero
thf(fact_1408_ln__gt__zero__imp__gt__one,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ ( ln_ln_real @ X ) )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ord_less_real @ one_one_real @ X ) ) ) ).

% ln_gt_zero_imp_gt_one
thf(fact_1409_ln__ge__zero,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ one_one_real @ X )
     => ( ord_less_eq_real @ zero_zero_real @ ( ln_ln_real @ X ) ) ) ).

% ln_ge_zero
thf(fact_1410_ln__ge__zero__imp__ge__one,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( ln_ln_real @ X ) )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ord_less_eq_real @ one_one_real @ X ) ) ) ).

% ln_ge_zero_imp_ge_one
thf(fact_1411_ln__add__one__self__le__self,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( ln_ln_real @ ( plus_plus_real @ one_one_real @ X ) ) @ X ) ) ).

% ln_add_one_self_le_self
thf(fact_1412_ln__mult,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ zero_zero_real @ Y2 )
       => ( ( ln_ln_real @ ( times_times_real @ X @ Y2 ) )
          = ( plus_plus_real @ ( ln_ln_real @ X ) @ ( ln_ln_real @ Y2 ) ) ) ) ) ).

% ln_mult
thf(fact_1413_ln__eq__minus__one,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ( ln_ln_real @ X )
          = ( minus_minus_real @ X @ one_one_real ) )
       => ( X = one_one_real ) ) ) ).

% ln_eq_minus_one
thf(fact_1414_ln__2__less__1,axiom,
    ord_less_real @ ( ln_ln_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ one_one_real ).

% ln_2_less_1
thf(fact_1415_ln__le__minus__one,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( ln_ln_real @ X ) @ ( minus_minus_real @ X @ one_one_real ) ) ) ).

% ln_le_minus_one
thf(fact_1416_ln__diff__le,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ zero_zero_real @ Y2 )
       => ( ord_less_eq_real @ ( minus_minus_real @ ( ln_ln_real @ X ) @ ( ln_ln_real @ Y2 ) ) @ ( divide_divide_real @ ( minus_minus_real @ X @ Y2 ) @ Y2 ) ) ) ) ).

% ln_diff_le
thf(fact_1417_ln__add__one__self__le__self2,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ord_less_eq_real @ ( ln_ln_real @ ( plus_plus_real @ one_one_real @ X ) ) @ X ) ) ).

% ln_add_one_self_le_self2
thf(fact_1418_ln__realpow,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ln_ln_real @ ( power_power_real @ X @ N ) )
        = ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( ln_ln_real @ X ) ) ) ) ).

% ln_realpow
thf(fact_1419_ln__one__minus__pos__upper__bound,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( ord_less_eq_real @ ( ln_ln_real @ ( minus_minus_real @ one_one_real @ X ) ) @ ( uminus_uminus_real @ X ) ) ) ) ).

% ln_one_minus_pos_upper_bound
thf(fact_1420_sums__if_H,axiom,
    ! [G: nat > real,X: real] :
      ( ( sums_real @ G @ X )
     => ( sums_real
        @ ^ [N2: nat] : ( if_real @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ zero_zero_real @ ( G @ ( divide_divide_nat @ ( minus_minus_nat @ N2 @ one_one_nat ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
        @ X ) ) ).

% sums_if'
thf(fact_1421_sums__if,axiom,
    ! [G: nat > real,X: real,F: nat > real,Y2: real] :
      ( ( sums_real @ G @ X )
     => ( ( sums_real @ F @ Y2 )
       => ( sums_real
          @ ^ [N2: nat] : ( if_real @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ ( F @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( G @ ( divide_divide_nat @ ( minus_minus_nat @ N2 @ one_one_nat ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
          @ ( plus_plus_real @ X @ Y2 ) ) ) ) ).

% sums_if
thf(fact_1422_sum__split__even__odd,axiom,
    ! [F: nat > real,G: nat > real,N: nat] :
      ( ( groups6591440286371151544t_real
        @ ^ [I4: nat] : ( if_real @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I4 ) @ ( F @ I4 ) @ ( G @ I4 ) )
        @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
      = ( plus_plus_real
        @ ( groups6591440286371151544t_real
          @ ^ [I4: nat] : ( F @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I4 ) )
          @ ( set_ord_lessThan_nat @ N ) )
        @ ( groups6591440286371151544t_real
          @ ^ [I4: nat] : ( G @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I4 ) @ one_one_nat ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum_split_even_odd
thf(fact_1423_ln__one__plus__pos__lower__bound,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ord_less_eq_real @ ( minus_minus_real @ X @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( ln_ln_real @ ( plus_plus_real @ one_one_real @ X ) ) ) ) ) ).

% ln_one_plus_pos_lower_bound
thf(fact_1424_power__half__series,axiom,
    ( sums_real
    @ ^ [N2: nat] : ( power_power_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( suc @ N2 ) )
    @ one_one_real ) ).

% power_half_series
thf(fact_1425_prod__int__plus__eq,axiom,
    ! [I2: nat,J: nat] :
      ( ( groups705719431365010083at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ I2 @ ( plus_plus_nat @ I2 @ J ) ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X4: int] : X4
        @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ I2 ) @ ( semiri1314217659103216013at_int @ ( plus_plus_nat @ I2 @ J ) ) ) ) ) ).

% prod_int_plus_eq
thf(fact_1426_sumr__cos__zero__one,axiom,
    ! [N: nat] :
      ( ( groups6591440286371151544t_real
        @ ^ [M6: nat] : ( times_times_real @ ( cos_coeff @ M6 ) @ ( power_power_real @ zero_zero_real @ M6 ) )
        @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = one_one_real ) ).

% sumr_cos_zero_one
thf(fact_1427_ln__series,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
       => ( ( ln_ln_real @ X )
          = ( suminf_real
            @ ^ [N2: nat] : ( times_times_real @ ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N2 ) @ ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ) @ ( power_power_real @ ( minus_minus_real @ X @ one_one_real ) @ ( suc @ N2 ) ) ) ) ) ) ) ).

% ln_series
thf(fact_1428_abs__ln__one__plus__x__minus__x__bound__nonpos,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_eq_real @ X @ zero_zero_real )
       => ( ord_less_eq_real @ ( abs_abs_real @ ( minus_minus_real @ ( ln_ln_real @ ( plus_plus_real @ one_one_real @ X ) ) @ X ) ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% abs_ln_one_plus_x_minus_x_bound_nonpos
thf(fact_1429_tanh__ln__real,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( tanh_real @ ( ln_ln_real @ X ) )
        = ( divide_divide_real @ ( minus_minus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_real ) @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_real ) ) ) ) ).

% tanh_ln_real
thf(fact_1430_abs__ln__one__plus__x__minus__x__bound,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
     => ( ord_less_eq_real @ ( abs_abs_real @ ( minus_minus_real @ ( ln_ln_real @ ( plus_plus_real @ one_one_real @ X ) ) @ X ) ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% abs_ln_one_plus_x_minus_x_bound
thf(fact_1431_tanh__real__le__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( tanh_real @ X ) @ ( tanh_real @ Y2 ) )
      = ( ord_less_eq_real @ X @ Y2 ) ) ).

% tanh_real_le_iff
thf(fact_1432_tanh__real__nonpos__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( tanh_real @ X ) @ zero_zero_real )
      = ( ord_less_eq_real @ X @ zero_zero_real ) ) ).

% tanh_real_nonpos_iff
thf(fact_1433_tanh__real__nonneg__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( tanh_real @ X ) )
      = ( ord_less_eq_real @ zero_zero_real @ X ) ) ).

% tanh_real_nonneg_iff
thf(fact_1434_cos__coeff__0,axiom,
    ( ( cos_coeff @ zero_zero_nat )
    = one_one_real ) ).

% cos_coeff_0
thf(fact_1435_artanh__minus__real,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( artanh_real @ ( uminus_uminus_real @ X ) )
        = ( uminus_uminus_real @ ( artanh_real @ X ) ) ) ) ).

% artanh_minus_real
thf(fact_1436_tanh__real__lt__1,axiom,
    ! [X: real] : ( ord_less_real @ ( tanh_real @ X ) @ one_one_real ) ).

% tanh_real_lt_1
thf(fact_1437_abs__real__def,axiom,
    ( abs_abs_real
    = ( ^ [A4: real] : ( if_real @ ( ord_less_real @ A4 @ zero_zero_real ) @ ( uminus_uminus_real @ A4 ) @ A4 ) ) ) ).

% abs_real_def
thf(fact_1438_sin__bound__lemma,axiom,
    ! [X: real,Y2: real,U: real,V: real] :
      ( ( X = Y2 )
     => ( ( ord_less_eq_real @ ( abs_abs_real @ U ) @ V )
       => ( ord_less_eq_real @ ( abs_abs_real @ ( minus_minus_real @ ( plus_plus_real @ X @ U ) @ Y2 ) ) @ V ) ) ) ).

% sin_bound_lemma
thf(fact_1439_tanh__real__gt__neg1,axiom,
    ! [X: real] : ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ ( tanh_real @ X ) ) ).

% tanh_real_gt_neg1
thf(fact_1440_lemma__interval,axiom,
    ! [A: real,X: real,B: real] :
      ( ( ord_less_real @ A @ X )
     => ( ( ord_less_real @ X @ B )
       => ? [D3: real] :
            ( ( ord_less_real @ zero_zero_real @ D3 )
            & ! [Y: real] :
                ( ( ord_less_real @ ( abs_abs_real @ ( minus_minus_real @ X @ Y ) ) @ D3 )
               => ( ( ord_less_eq_real @ A @ Y )
                  & ( ord_less_eq_real @ Y @ B ) ) ) ) ) ) ).

% lemma_interval
thf(fact_1441_abs__ln__one__plus__x__minus__x__bound__nonneg,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ord_less_eq_real @ ( abs_abs_real @ ( minus_minus_real @ ( ln_ln_real @ ( plus_plus_real @ one_one_real @ X ) ) @ X ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% abs_ln_one_plus_x_minus_x_bound_nonneg
thf(fact_1442_monoseq__arctan__series,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( topolo6980174941875973593q_real
        @ ^ [N2: nat] : ( times_times_real @ ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ ( times_times_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) @ ( power_power_real @ X @ ( plus_plus_nat @ ( times_times_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) ) ) ).

% monoseq_arctan_series
thf(fact_1443_arctan__series,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( arctan @ X )
        = ( suminf_real
          @ ^ [K3: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ K3 ) @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) @ ( power_power_real @ X @ ( plus_plus_nat @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) ) ) ) ) ).

% arctan_series
thf(fact_1444_pi__series,axiom,
    ( ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) )
    = ( suminf_real
      @ ^ [K3: nat] : ( divide_divide_real @ ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ K3 ) @ one_one_real ) @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) ) ) ).

% pi_series
thf(fact_1445_summable__arctan__series,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( summable_real
        @ ^ [K3: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ K3 ) @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) @ ( power_power_real @ X @ ( plus_plus_nat @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) ) ) ) ).

% summable_arctan_series
thf(fact_1446_zdvd1__eq,axiom,
    ! [X: int] :
      ( ( dvd_dvd_int @ X @ one_one_int )
      = ( ( abs_abs_int @ X )
        = one_one_int ) ) ).

% zdvd1_eq
thf(fact_1447_zabs__less__one__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ ( abs_abs_int @ Z ) @ one_one_int )
      = ( Z = zero_zero_int ) ) ).

% zabs_less_one_iff
thf(fact_1448_arctan__le__zero__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( arctan @ X ) @ zero_zero_real )
      = ( ord_less_eq_real @ X @ zero_zero_real ) ) ).

% arctan_le_zero_iff
thf(fact_1449_zero__le__arctan__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( arctan @ X ) )
      = ( ord_less_eq_real @ zero_zero_real @ X ) ) ).

% zero_le_arctan_iff
thf(fact_1450_arctan__monotone_H,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ X @ Y2 )
     => ( ord_less_eq_real @ ( arctan @ X ) @ ( arctan @ Y2 ) ) ) ).

% arctan_monotone'
thf(fact_1451_arctan__le__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( arctan @ X ) @ ( arctan @ Y2 ) )
      = ( ord_less_eq_real @ X @ Y2 ) ) ).

% arctan_le_iff
thf(fact_1452_abs__zmult__eq__1,axiom,
    ! [M: int,N: int] :
      ( ( ( abs_abs_int @ ( times_times_int @ M @ N ) )
        = one_one_int )
     => ( ( abs_abs_int @ M )
        = one_one_int ) ) ).

% abs_zmult_eq_1
thf(fact_1453_pi__ge__zero,axiom,
    ord_less_eq_real @ zero_zero_real @ pi ).

% pi_ge_zero
thf(fact_1454_arctan__ubound,axiom,
    ! [Y2: real] : ( ord_less_real @ ( arctan @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% arctan_ubound
thf(fact_1455_arctan__one,axiom,
    ( ( arctan @ one_one_real )
    = ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ).

% arctan_one
thf(fact_1456_arctan__bounded,axiom,
    ! [Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arctan @ Y2 ) )
      & ( ord_less_real @ ( arctan @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% arctan_bounded
thf(fact_1457_arctan__lbound,axiom,
    ! [Y2: real] : ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arctan @ Y2 ) ) ).

% arctan_lbound
thf(fact_1458_dvd__imp__le__int,axiom,
    ! [I2: int,D: int] :
      ( ( I2 != zero_zero_int )
     => ( ( dvd_dvd_int @ D @ I2 )
       => ( ord_less_eq_int @ ( abs_abs_int @ D ) @ ( abs_abs_int @ I2 ) ) ) ) ).

% dvd_imp_le_int
thf(fact_1459_abs__mod__less,axiom,
    ! [L2: int,K: int] :
      ( ( L2 != zero_zero_int )
     => ( ord_less_int @ ( abs_abs_int @ ( modulo_modulo_int @ K @ L2 ) ) @ ( abs_abs_int @ L2 ) ) ) ).

% abs_mod_less
thf(fact_1460_summable__rabs__comparison__test,axiom,
    ! [F: nat > real,G: nat > real] :
      ( ? [N5: nat] :
        ! [N4: nat] :
          ( ( ord_less_eq_nat @ N5 @ N4 )
         => ( ord_less_eq_real @ ( abs_abs_real @ ( F @ N4 ) ) @ ( G @ N4 ) ) )
     => ( ( summable_real @ G )
       => ( summable_real
          @ ^ [N2: nat] : ( abs_abs_real @ ( F @ N2 ) ) ) ) ) ).

% summable_rabs_comparison_test
thf(fact_1461_summable__rabs,axiom,
    ! [F: nat > real] :
      ( ( summable_real
        @ ^ [N2: nat] : ( abs_abs_real @ ( F @ N2 ) ) )
     => ( ord_less_eq_real @ ( abs_abs_real @ ( suminf_real @ F ) )
        @ ( suminf_real
          @ ^ [N2: nat] : ( abs_abs_real @ ( F @ N2 ) ) ) ) ) ).

% summable_rabs
thf(fact_1462_machin__Euler,axiom,
    ( ( plus_plus_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit1 @ ( bit0 @ one ) ) ) @ ( arctan @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( arctan @ ( divide_divide_real @ ( numeral_numeral_real @ ( bit1 @ one ) ) @ ( numeral_numeral_real @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) )
    = ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ).

% machin_Euler
thf(fact_1463_machin,axiom,
    ( ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) )
    = ( minus_minus_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) @ ( arctan @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit1 @ ( bit0 @ one ) ) ) ) ) ) @ ( arctan @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ).

% machin
thf(fact_1464_pi__less__4,axiom,
    ord_less_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ).

% pi_less_4
thf(fact_1465_pi__ge__two,axiom,
    ord_less_eq_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ).

% pi_ge_two
thf(fact_1466_zdvd__mult__cancel1,axiom,
    ! [M: int,N: int] :
      ( ( M != zero_zero_int )
     => ( ( dvd_dvd_int @ ( times_times_int @ M @ N ) @ M )
        = ( ( abs_abs_int @ N )
          = one_one_int ) ) ) ).

% zdvd_mult_cancel1
thf(fact_1467_pi__half__neq__two,axiom,
    ( ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
   != ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% pi_half_neq_two
thf(fact_1468_even__abs__add__iff,axiom,
    ! [K: int,L2: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ ( abs_abs_int @ K ) @ L2 ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ L2 ) ) ) ).

% even_abs_add_iff
thf(fact_1469_even__add__abs__iff,axiom,
    ! [K: int,L2: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ ( abs_abs_int @ L2 ) ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ L2 ) ) ) ).

% even_add_abs_iff
thf(fact_1470_pi__half__neq__zero,axiom,
    ( ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
   != zero_zero_real ) ).

% pi_half_neq_zero
thf(fact_1471_pi__half__less__two,axiom,
    ord_less_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ).

% pi_half_less_two
thf(fact_1472_pi__half__le__two,axiom,
    ord_less_eq_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ).

% pi_half_le_two
thf(fact_1473_monoseq__realpow,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( topolo6980174941875973593q_real @ ( power_power_real @ X ) ) ) ) ).

% monoseq_realpow
thf(fact_1474_summable__power__series,axiom,
    ! [F: nat > real,Z: real] :
      ( ! [I3: nat] : ( ord_less_eq_real @ ( F @ I3 ) @ one_one_real )
     => ( ! [I3: nat] : ( ord_less_eq_real @ zero_zero_real @ ( F @ I3 ) )
       => ( ( ord_less_eq_real @ zero_zero_real @ Z )
         => ( ( ord_less_real @ Z @ one_one_real )
           => ( summable_real
              @ ^ [I4: nat] : ( times_times_real @ ( F @ I4 ) @ ( power_power_real @ Z @ I4 ) ) ) ) ) ) ) ).

% summable_power_series
thf(fact_1475_nat__intermed__int__val,axiom,
    ! [M: nat,N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ( ord_less_eq_nat @ M @ I3 )
            & ( ord_less_nat @ I3 @ N ) )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( suc @ I3 ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ( ord_less_eq_int @ ( F @ M ) @ K )
         => ( ( ord_less_eq_int @ K @ ( F @ N ) )
           => ? [I3: nat] :
                ( ( ord_less_eq_nat @ M @ I3 )
                & ( ord_less_eq_nat @ I3 @ N )
                & ( ( F @ I3 )
                  = K ) ) ) ) ) ) ).

% nat_intermed_int_val
thf(fact_1476_incr__lemma,axiom,
    ! [D: int,Z: int,X: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ord_less_int @ Z @ ( plus_plus_int @ X @ ( times_times_int @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ X @ Z ) ) @ one_one_int ) @ D ) ) ) ) ).

% incr_lemma
thf(fact_1477_decr__lemma,axiom,
    ! [D: int,X: int,Z: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ord_less_int @ ( minus_minus_int @ X @ ( times_times_int @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ X @ Z ) ) @ one_one_int ) @ D ) ) @ Z ) ) ).

% decr_lemma
thf(fact_1478_pi__half__gt__zero,axiom,
    ord_less_real @ zero_zero_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% pi_half_gt_zero
thf(fact_1479_pi__half__ge__zero,axiom,
    ord_less_eq_real @ zero_zero_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% pi_half_ge_zero
thf(fact_1480_m2pi__less__pi,axiom,
    ord_less_real @ ( uminus_uminus_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) @ pi ).

% m2pi_less_pi
thf(fact_1481_nat__ivt__aux,axiom,
    ! [N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( suc @ I3 ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_int @ ( F @ zero_zero_nat ) @ K )
       => ( ( ord_less_eq_int @ K @ ( F @ N ) )
         => ? [I3: nat] :
              ( ( ord_less_eq_nat @ I3 @ N )
              & ( ( F @ I3 )
                = K ) ) ) ) ) ).

% nat_ivt_aux
thf(fact_1482_complex__mod__minus__le__complex__mod,axiom,
    ! [X: complex] : ( ord_less_eq_real @ ( uminus_uminus_real @ ( real_V1022390504157884413omplex @ X ) ) @ ( real_V1022390504157884413omplex @ X ) ) ).

% complex_mod_minus_le_complex_mod
thf(fact_1483_minus__pi__half__less__zero,axiom,
    ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ zero_zero_real ).

% minus_pi_half_less_zero
thf(fact_1484_complex__mod__triangle__ineq2,axiom,
    ! [B: complex,A: complex] : ( ord_less_eq_real @ ( minus_minus_real @ ( real_V1022390504157884413omplex @ ( plus_plus_complex @ B @ A ) ) @ ( real_V1022390504157884413omplex @ B ) ) @ ( real_V1022390504157884413omplex @ A ) ) ).

% complex_mod_triangle_ineq2
thf(fact_1485_nat0__intermed__int__val,axiom,
    ! [N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( plus_plus_nat @ I3 @ one_one_nat ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_int @ ( F @ zero_zero_nat ) @ K )
       => ( ( ord_less_eq_int @ K @ ( F @ N ) )
         => ? [I3: nat] :
              ( ( ord_less_eq_nat @ I3 @ N )
              & ( ( F @ I3 )
                = K ) ) ) ) ) ).

% nat0_intermed_int_val
thf(fact_1486_sum__nth__roots,axiom,
    ! [N: nat,C: complex] :
      ( ( ord_less_nat @ one_one_nat @ N )
     => ( ( groups7754918857620584856omplex
          @ ^ [X4: complex] : X4
          @ ( collect_complex
            @ ^ [Z5: complex] :
                ( ( power_power_complex @ Z5 @ N )
                = C ) ) )
        = zero_zero_complex ) ) ).

% sum_nth_roots
thf(fact_1487_sum__roots__unity,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ one_one_nat @ N )
     => ( ( groups7754918857620584856omplex
          @ ^ [X4: complex] : X4
          @ ( collect_complex
            @ ^ [Z5: complex] :
                ( ( power_power_complex @ Z5 @ N )
                = one_one_complex ) ) )
        = zero_zero_complex ) ) ).

% sum_roots_unity
thf(fact_1488_arctan__add,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( ord_less_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
       => ( ( plus_plus_real @ ( arctan @ X ) @ ( arctan @ Y2 ) )
          = ( arctan @ ( divide_divide_real @ ( plus_plus_real @ X @ Y2 ) @ ( minus_minus_real @ one_one_real @ ( times_times_real @ X @ Y2 ) ) ) ) ) ) ) ).

% arctan_add
thf(fact_1489_sum__pos__lt__pair,axiom,
    ! [F: nat > real,K: nat] :
      ( ( summable_real @ F )
     => ( ! [D3: nat] : ( ord_less_real @ zero_zero_real @ ( plus_plus_real @ ( F @ ( plus_plus_nat @ K @ ( times_times_nat @ ( suc @ ( suc @ zero_zero_nat ) ) @ D3 ) ) ) @ ( F @ ( plus_plus_nat @ K @ ( plus_plus_nat @ ( times_times_nat @ ( suc @ ( suc @ zero_zero_nat ) ) @ D3 ) @ one_one_nat ) ) ) ) )
       => ( ord_less_real @ ( groups6591440286371151544t_real @ F @ ( set_ord_lessThan_nat @ K ) ) @ ( suminf_real @ F ) ) ) ) ).

% sum_pos_lt_pair
thf(fact_1490_arctan__double,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( arctan @ X ) )
        = ( arctan @ ( divide_divide_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ X ) @ ( minus_minus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% arctan_double
thf(fact_1491_sin__cos__npi,axiom,
    ! [N: nat] :
      ( ( sin_real @ ( divide_divide_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
      = ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) ) ).

% sin_cos_npi
thf(fact_1492_cos__pi__eq__zero,axiom,
    ! [M: nat] :
      ( ( cos_real @ ( divide_divide_real @ ( times_times_real @ pi @ ( semiri5074537144036343181t_real @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
      = zero_zero_real ) ).

% cos_pi_eq_zero
thf(fact_1493_cos__pi,axiom,
    ( ( cos_real @ pi )
    = ( uminus_uminus_real @ one_one_real ) ) ).

% cos_pi
thf(fact_1494_cos__periodic__pi2,axiom,
    ! [X: real] :
      ( ( cos_real @ ( plus_plus_real @ pi @ X ) )
      = ( uminus_uminus_real @ ( cos_real @ X ) ) ) ).

% cos_periodic_pi2
thf(fact_1495_cos__periodic__pi,axiom,
    ! [X: real] :
      ( ( cos_real @ ( plus_plus_real @ X @ pi ) )
      = ( uminus_uminus_real @ ( cos_real @ X ) ) ) ).

% cos_periodic_pi
thf(fact_1496_sin__periodic__pi2,axiom,
    ! [X: real] :
      ( ( sin_real @ ( plus_plus_real @ pi @ X ) )
      = ( uminus_uminus_real @ ( sin_real @ X ) ) ) ).

% sin_periodic_pi2
thf(fact_1497_sin__periodic__pi,axiom,
    ! [X: real] :
      ( ( sin_real @ ( plus_plus_real @ X @ pi ) )
      = ( uminus_uminus_real @ ( sin_real @ X ) ) ) ).

% sin_periodic_pi
thf(fact_1498_sin__npi2,axiom,
    ! [N: nat] :
      ( ( sin_real @ ( times_times_real @ pi @ ( semiri5074537144036343181t_real @ N ) ) )
      = zero_zero_real ) ).

% sin_npi2
thf(fact_1499_sin__npi,axiom,
    ! [N: nat] :
      ( ( sin_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ pi ) )
      = zero_zero_real ) ).

% sin_npi
thf(fact_1500_sin__npi__int,axiom,
    ! [N: int] :
      ( ( sin_real @ ( times_times_real @ pi @ ( ring_1_of_int_real @ N ) ) )
      = zero_zero_real ) ).

% sin_npi_int
thf(fact_1501_cos__pi__half,axiom,
    ( ( cos_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
    = zero_zero_real ) ).

% cos_pi_half
thf(fact_1502_sin__two__pi,axiom,
    ( ( sin_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
    = zero_zero_real ) ).

% sin_two_pi
thf(fact_1503_sin__pi__half,axiom,
    ( ( sin_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
    = one_one_real ) ).

% sin_pi_half
thf(fact_1504_cos__two__pi,axiom,
    ( ( cos_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
    = one_one_real ) ).

% cos_two_pi
thf(fact_1505_cos__periodic,axiom,
    ! [X: real] :
      ( ( cos_real @ ( plus_plus_real @ X @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) )
      = ( cos_real @ X ) ) ).

% cos_periodic
thf(fact_1506_sin__periodic,axiom,
    ! [X: real] :
      ( ( sin_real @ ( plus_plus_real @ X @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) )
      = ( sin_real @ X ) ) ).

% sin_periodic
thf(fact_1507_cos__2pi__minus,axiom,
    ! [X: real] :
      ( ( cos_real @ ( minus_minus_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ X ) )
      = ( cos_real @ X ) ) ).

% cos_2pi_minus
thf(fact_1508_cos__npi2,axiom,
    ! [N: nat] :
      ( ( cos_real @ ( times_times_real @ pi @ ( semiri5074537144036343181t_real @ N ) ) )
      = ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) ) ).

% cos_npi2
thf(fact_1509_cos__npi,axiom,
    ! [N: nat] :
      ( ( cos_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ pi ) )
      = ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) ) ).

% cos_npi
thf(fact_1510_sin__2npi,axiom,
    ! [N: nat] :
      ( ( sin_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) )
      = zero_zero_real ) ).

% sin_2npi
thf(fact_1511_cos__2npi,axiom,
    ! [N: nat] :
      ( ( cos_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) )
      = one_one_real ) ).

% cos_2npi
thf(fact_1512_sin__2pi__minus,axiom,
    ! [X: real] :
      ( ( sin_real @ ( minus_minus_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ X ) )
      = ( uminus_uminus_real @ ( sin_real @ X ) ) ) ).

% sin_2pi_minus
thf(fact_1513_sin__int__2pin,axiom,
    ! [N: int] :
      ( ( sin_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ ( ring_1_of_int_real @ N ) ) )
      = zero_zero_real ) ).

% sin_int_2pin
thf(fact_1514_cos__int__2pin,axiom,
    ! [N: int] :
      ( ( cos_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ ( ring_1_of_int_real @ N ) ) )
      = one_one_real ) ).

% cos_int_2pin
thf(fact_1515_cos__3over2__pi,axiom,
    ( ( cos_real @ ( times_times_real @ ( divide_divide_real @ ( numeral_numeral_real @ ( bit1 @ one ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ pi ) )
    = zero_zero_real ) ).

% cos_3over2_pi
thf(fact_1516_sin__3over2__pi,axiom,
    ( ( sin_real @ ( times_times_real @ ( divide_divide_real @ ( numeral_numeral_real @ ( bit1 @ one ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ pi ) )
    = ( uminus_uminus_real @ one_one_real ) ) ).

% sin_3over2_pi
thf(fact_1517_cos__npi__int,axiom,
    ! [N: int] :
      ( ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N )
       => ( ( cos_real @ ( times_times_real @ pi @ ( ring_1_of_int_real @ N ) ) )
          = one_one_real ) )
      & ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N )
       => ( ( cos_real @ ( times_times_real @ pi @ ( ring_1_of_int_real @ N ) ) )
          = ( uminus_uminus_real @ one_one_real ) ) ) ) ).

% cos_npi_int
thf(fact_1518_polar__Ex,axiom,
    ! [X: real,Y2: real] :
    ? [R3: real,A5: real] :
      ( ( X
        = ( times_times_real @ R3 @ ( cos_real @ A5 ) ) )
      & ( Y2
        = ( times_times_real @ R3 @ ( sin_real @ A5 ) ) ) ) ).

% polar_Ex
thf(fact_1519_sin__zero__abs__cos__one,axiom,
    ! [X: real] :
      ( ( ( sin_real @ X )
        = zero_zero_real )
     => ( ( abs_abs_real @ ( cos_real @ X ) )
        = one_one_real ) ) ).

% sin_zero_abs_cos_one
thf(fact_1520_sincos__principal__value,axiom,
    ! [X: real] :
    ? [Y3: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ pi ) @ Y3 )
      & ( ord_less_eq_real @ Y3 @ pi )
      & ( ( sin_real @ Y3 )
        = ( sin_real @ X ) )
      & ( ( cos_real @ Y3 )
        = ( cos_real @ X ) ) ) ).

% sincos_principal_value
thf(fact_1521_sin__x__le__x,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( sin_real @ X ) @ X ) ) ).

% sin_x_le_x
thf(fact_1522_sin__le__one,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( sin_real @ X ) @ one_one_real ) ).

% sin_le_one
thf(fact_1523_cos__le__one,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( cos_real @ X ) @ one_one_real ) ).

% cos_le_one
thf(fact_1524_abs__sin__x__le__abs__x,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( abs_abs_real @ ( sin_real @ X ) ) @ ( abs_abs_real @ X ) ) ).

% abs_sin_x_le_abs_x
thf(fact_1525_sin__cos__le1,axiom,
    ! [X: real,Y2: real] : ( ord_less_eq_real @ ( abs_abs_real @ ( plus_plus_real @ ( times_times_real @ ( sin_real @ X ) @ ( sin_real @ Y2 ) ) @ ( times_times_real @ ( cos_real @ X ) @ ( cos_real @ Y2 ) ) ) ) @ one_one_real ) ).

% sin_cos_le1
thf(fact_1526_sin__x__ge__neg__x,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( uminus_uminus_real @ X ) @ ( sin_real @ X ) ) ) ).

% sin_x_ge_neg_x
thf(fact_1527_sin__ge__zero,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ pi )
       => ( ord_less_eq_real @ zero_zero_real @ ( sin_real @ X ) ) ) ) ).

% sin_ge_zero
thf(fact_1528_sin__ge__minus__one,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ ( sin_real @ X ) ) ).

% sin_ge_minus_one
thf(fact_1529_cos__monotone__0__pi__le,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ X )
       => ( ( ord_less_eq_real @ X @ pi )
         => ( ord_less_eq_real @ ( cos_real @ X ) @ ( cos_real @ Y2 ) ) ) ) ) ).

% cos_monotone_0_pi_le
thf(fact_1530_cos__mono__le__eq,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ pi )
       => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ pi )
           => ( ( ord_less_eq_real @ ( cos_real @ X ) @ ( cos_real @ Y2 ) )
              = ( ord_less_eq_real @ Y2 @ X ) ) ) ) ) ) ).

% cos_mono_le_eq
thf(fact_1531_cos__inj__pi,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ pi )
       => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ pi )
           => ( ( ( cos_real @ X )
                = ( cos_real @ Y2 ) )
             => ( X = Y2 ) ) ) ) ) ) ).

% cos_inj_pi
thf(fact_1532_cos__ge__minus__one,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ ( cos_real @ X ) ) ).

% cos_ge_minus_one
thf(fact_1533_abs__sin__le__one,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( abs_abs_real @ ( sin_real @ X ) ) @ one_one_real ) ).

% abs_sin_le_one
thf(fact_1534_abs__cos__le__one,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( abs_abs_real @ ( cos_real @ X ) ) @ one_one_real ) ).

% abs_cos_le_one
thf(fact_1535_cos__two__neq__zero,axiom,
    ( ( cos_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
   != zero_zero_real ) ).

% cos_two_neq_zero
thf(fact_1536_cos__monotone__0__pi,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
     => ( ( ord_less_real @ Y2 @ X )
       => ( ( ord_less_eq_real @ X @ pi )
         => ( ord_less_real @ ( cos_real @ X ) @ ( cos_real @ Y2 ) ) ) ) ) ).

% cos_monotone_0_pi
thf(fact_1537_cos__mono__less__eq,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ pi )
       => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ pi )
           => ( ( ord_less_real @ ( cos_real @ X ) @ ( cos_real @ Y2 ) )
              = ( ord_less_real @ Y2 @ X ) ) ) ) ) ) ).

% cos_mono_less_eq
thf(fact_1538_cos__monotone__minus__pi__0_H,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ pi ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ X )
       => ( ( ord_less_eq_real @ X @ zero_zero_real )
         => ( ord_less_eq_real @ ( cos_real @ Y2 ) @ ( cos_real @ X ) ) ) ) ) ).

% cos_monotone_minus_pi_0'
thf(fact_1539_sin__zero__iff__int2,axiom,
    ! [X: real] :
      ( ( ( sin_real @ X )
        = zero_zero_real )
      = ( ? [I4: int] :
            ( X
            = ( times_times_real @ ( ring_1_of_int_real @ I4 ) @ pi ) ) ) ) ).

% sin_zero_iff_int2
thf(fact_1540_sincos__total__pi,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
     => ( ( ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
          = one_one_real )
       => ? [T3: real] :
            ( ( ord_less_eq_real @ zero_zero_real @ T3 )
            & ( ord_less_eq_real @ T3 @ pi )
            & ( X
              = ( cos_real @ T3 ) )
            & ( Y2
              = ( sin_real @ T3 ) ) ) ) ) ).

% sincos_total_pi
thf(fact_1541_sin__expansion__lemma,axiom,
    ! [X: real,M: nat] :
      ( ( sin_real @ ( plus_plus_real @ X @ ( divide_divide_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ ( suc @ M ) ) @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) )
      = ( cos_real @ ( plus_plus_real @ X @ ( divide_divide_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ M ) @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% sin_expansion_lemma
thf(fact_1542_cos__expansion__lemma,axiom,
    ! [X: real,M: nat] :
      ( ( cos_real @ ( plus_plus_real @ X @ ( divide_divide_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ ( suc @ M ) ) @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) )
      = ( uminus_uminus_real @ ( sin_real @ ( plus_plus_real @ X @ ( divide_divide_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ M ) @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ).

% cos_expansion_lemma
thf(fact_1543_sin__gt__zero__02,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
       => ( ord_less_real @ zero_zero_real @ ( sin_real @ X ) ) ) ) ).

% sin_gt_zero_02
thf(fact_1544_cos__two__less__zero,axiom,
    ord_less_real @ ( cos_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ zero_zero_real ).

% cos_two_less_zero
thf(fact_1545_cos__two__le__zero,axiom,
    ord_less_eq_real @ ( cos_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ zero_zero_real ).

% cos_two_le_zero
thf(fact_1546_cos__is__zero,axiom,
    ? [X5: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X5 )
      & ( ord_less_eq_real @ X5 @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
      & ( ( cos_real @ X5 )
        = zero_zero_real )
      & ! [Y: real] :
          ( ( ( ord_less_eq_real @ zero_zero_real @ Y )
            & ( ord_less_eq_real @ Y @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
            & ( ( cos_real @ Y )
              = zero_zero_real ) )
         => ( Y = X5 ) ) ) ).

% cos_is_zero
thf(fact_1547_cos__monotone__minus__pi__0,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ pi ) @ Y2 )
     => ( ( ord_less_real @ Y2 @ X )
       => ( ( ord_less_eq_real @ X @ zero_zero_real )
         => ( ord_less_real @ ( cos_real @ Y2 ) @ ( cos_real @ X ) ) ) ) ) ).

% cos_monotone_minus_pi_0
thf(fact_1548_cos__total,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ? [X5: real] :
            ( ( ord_less_eq_real @ zero_zero_real @ X5 )
            & ( ord_less_eq_real @ X5 @ pi )
            & ( ( cos_real @ X5 )
              = Y2 )
            & ! [Y: real] :
                ( ( ( ord_less_eq_real @ zero_zero_real @ Y )
                  & ( ord_less_eq_real @ Y @ pi )
                  & ( ( cos_real @ Y )
                    = Y2 ) )
               => ( Y = X5 ) ) ) ) ) ).

% cos_total
thf(fact_1549_sincos__total__pi__half,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
            = one_one_real )
         => ? [T3: real] :
              ( ( ord_less_eq_real @ zero_zero_real @ T3 )
              & ( ord_less_eq_real @ T3 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
              & ( X
                = ( cos_real @ T3 ) )
              & ( Y2
                = ( sin_real @ T3 ) ) ) ) ) ) ).

% sincos_total_pi_half
thf(fact_1550_sincos__total__2pi__le,axiom,
    ! [X: real,Y2: real] :
      ( ( ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = one_one_real )
     => ? [T3: real] :
          ( ( ord_less_eq_real @ zero_zero_real @ T3 )
          & ( ord_less_eq_real @ T3 @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
          & ( X
            = ( cos_real @ T3 ) )
          & ( Y2
            = ( sin_real @ T3 ) ) ) ) ).

% sincos_total_2pi_le
thf(fact_1551_sincos__total__2pi,axiom,
    ! [X: real,Y2: real] :
      ( ( ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = one_one_real )
     => ~ ! [T3: real] :
            ( ( ord_less_eq_real @ zero_zero_real @ T3 )
           => ( ( ord_less_real @ T3 @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
             => ( ( X
                  = ( cos_real @ T3 ) )
               => ( Y2
                 != ( sin_real @ T3 ) ) ) ) ) ) ).

% sincos_total_2pi
thf(fact_1552_sin__pi__divide__n__ge__0,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_eq_real @ zero_zero_real @ ( sin_real @ ( divide_divide_real @ pi @ ( semiri5074537144036343181t_real @ N ) ) ) ) ) ).

% sin_pi_divide_n_ge_0
thf(fact_1553_sin__gt__zero2,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_real @ zero_zero_real @ ( sin_real @ X ) ) ) ) ).

% sin_gt_zero2
thf(fact_1554_sin__lt__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ pi @ X )
     => ( ( ord_less_real @ X @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
       => ( ord_less_real @ ( sin_real @ X ) @ zero_zero_real ) ) ) ).

% sin_lt_zero
thf(fact_1555_cos__double__less__one,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
       => ( ord_less_real @ ( cos_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ X ) ) @ one_one_real ) ) ) ).

% cos_double_less_one
thf(fact_1556_sin__30,axiom,
    ( ( sin_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit1 @ one ) ) ) ) )
    = ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% sin_30
thf(fact_1557_cos__gt__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_real @ zero_zero_real @ ( cos_real @ X ) ) ) ) ).

% cos_gt_zero
thf(fact_1558_sin__inj__pi,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ( sin_real @ X )
                = ( sin_real @ Y2 ) )
             => ( X = Y2 ) ) ) ) ) ) ).

% sin_inj_pi
thf(fact_1559_sin__mono__le__eq,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ord_less_eq_real @ ( sin_real @ X ) @ ( sin_real @ Y2 ) )
              = ( ord_less_eq_real @ X @ Y2 ) ) ) ) ) ) ).

% sin_mono_le_eq
thf(fact_1560_sin__monotone__2pi__le,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ X )
       => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
         => ( ord_less_eq_real @ ( sin_real @ Y2 ) @ ( sin_real @ X ) ) ) ) ) ).

% sin_monotone_2pi_le
thf(fact_1561_cos__60,axiom,
    ( ( cos_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit1 @ one ) ) ) )
    = ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% cos_60
thf(fact_1562_cos__one__2pi__int,axiom,
    ! [X: real] :
      ( ( ( cos_real @ X )
        = one_one_real )
      = ( ? [X4: int] :
            ( X
            = ( times_times_real @ ( times_times_real @ ( ring_1_of_int_real @ X4 ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ pi ) ) ) ) ).

% cos_one_2pi_int
thf(fact_1563_sin__le__zero,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ pi @ X )
     => ( ( ord_less_real @ X @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
       => ( ord_less_eq_real @ ( sin_real @ X ) @ zero_zero_real ) ) ) ).

% sin_le_zero
thf(fact_1564_sin__less__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( divide_divide_real @ ( uminus_uminus_real @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ X )
     => ( ( ord_less_real @ X @ zero_zero_real )
       => ( ord_less_real @ ( sin_real @ X ) @ zero_zero_real ) ) ) ).

% sin_less_zero
thf(fact_1565_sin__mono__less__eq,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ord_less_real @ ( sin_real @ X ) @ ( sin_real @ Y2 ) )
              = ( ord_less_real @ X @ Y2 ) ) ) ) ) ) ).

% sin_mono_less_eq
thf(fact_1566_sin__monotone__2pi,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
     => ( ( ord_less_real @ Y2 @ X )
       => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
         => ( ord_less_real @ ( sin_real @ Y2 ) @ ( sin_real @ X ) ) ) ) ) ).

% sin_monotone_2pi
thf(fact_1567_sin__total,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ? [X5: real] :
            ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X5 )
            & ( ord_less_eq_real @ X5 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
            & ( ( sin_real @ X5 )
              = Y2 )
            & ! [Y: real] :
                ( ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y )
                  & ( ord_less_eq_real @ Y @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
                  & ( ( sin_real @ Y )
                    = Y2 ) )
               => ( Y = X5 ) ) ) ) ) ).

% sin_total
thf(fact_1568_cos__gt__zero__pi,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_real @ zero_zero_real @ ( cos_real @ X ) ) ) ) ).

% cos_gt_zero_pi
thf(fact_1569_cos__ge__zero,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_eq_real @ zero_zero_real @ ( cos_real @ X ) ) ) ) ).

% cos_ge_zero
thf(fact_1570_cos__one__2pi,axiom,
    ! [X: real] :
      ( ( ( cos_real @ X )
        = one_one_real )
      = ( ? [X4: nat] :
            ( X
            = ( times_times_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ X4 ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ pi ) )
        | ? [X4: nat] :
            ( X
            = ( uminus_uminus_real @ ( times_times_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ X4 ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ pi ) ) ) ) ) ).

% cos_one_2pi
thf(fact_1571_sin__pi__divide__n__gt__0,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_real @ zero_zero_real @ ( sin_real @ ( divide_divide_real @ pi @ ( semiri5074537144036343181t_real @ N ) ) ) ) ) ).

% sin_pi_divide_n_gt_0
thf(fact_1572_sin__zero__iff__int,axiom,
    ! [X: real] :
      ( ( ( sin_real @ X )
        = zero_zero_real )
      = ( ? [I4: int] :
            ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ I4 )
            & ( X
              = ( times_times_real @ ( ring_1_of_int_real @ I4 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% sin_zero_iff_int
thf(fact_1573_cos__zero__iff__int,axiom,
    ! [X: real] :
      ( ( ( cos_real @ X )
        = zero_zero_real )
      = ( ? [I4: int] :
            ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ I4 )
            & ( X
              = ( times_times_real @ ( ring_1_of_int_real @ I4 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% cos_zero_iff_int
thf(fact_1574_sin__zero__lemma,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ( sin_real @ X )
          = zero_zero_real )
       => ? [N4: nat] :
            ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N4 )
            & ( X
              = ( times_times_real @ ( semiri5074537144036343181t_real @ N4 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% sin_zero_lemma
thf(fact_1575_sin__zero__iff,axiom,
    ! [X: real] :
      ( ( ( sin_real @ X )
        = zero_zero_real )
      = ( ? [N2: nat] :
            ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 )
            & ( X
              = ( times_times_real @ ( semiri5074537144036343181t_real @ N2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) )
        | ? [N2: nat] :
            ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 )
            & ( X
              = ( uminus_uminus_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% sin_zero_iff
thf(fact_1576_cos__zero__lemma,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ( cos_real @ X )
          = zero_zero_real )
       => ? [N4: nat] :
            ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N4 )
            & ( X
              = ( times_times_real @ ( semiri5074537144036343181t_real @ N4 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% cos_zero_lemma
thf(fact_1577_cos__zero__iff,axiom,
    ! [X: real] :
      ( ( ( cos_real @ X )
        = zero_zero_real )
      = ( ? [N2: nat] :
            ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 )
            & ( X
              = ( times_times_real @ ( semiri5074537144036343181t_real @ N2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) )
        | ? [N2: nat] :
            ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 )
            & ( X
              = ( uminus_uminus_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% cos_zero_iff
thf(fact_1578_Maclaurin__cos__expansion2,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ? [T3: real] :
            ( ( ord_less_real @ zero_zero_real @ T3 )
            & ( ord_less_real @ T3 @ X )
            & ( ( cos_real @ X )
              = ( plus_plus_real
                @ ( groups6591440286371151544t_real
                  @ ^ [M6: nat] : ( times_times_real @ ( cos_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
                  @ ( set_ord_lessThan_nat @ N ) )
                @ ( times_times_real @ ( divide_divide_real @ ( cos_real @ ( plus_plus_real @ T3 @ ( times_times_real @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) ) ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ) ).

% Maclaurin_cos_expansion2
thf(fact_1579_Maclaurin__minus__cos__expansion,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ X @ zero_zero_real )
       => ? [T3: real] :
            ( ( ord_less_real @ X @ T3 )
            & ( ord_less_real @ T3 @ zero_zero_real )
            & ( ( cos_real @ X )
              = ( plus_plus_real
                @ ( groups6591440286371151544t_real
                  @ ^ [M6: nat] : ( times_times_real @ ( cos_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
                  @ ( set_ord_lessThan_nat @ N ) )
                @ ( times_times_real @ ( divide_divide_real @ ( cos_real @ ( plus_plus_real @ T3 @ ( times_times_real @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) ) ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ) ).

% Maclaurin_minus_cos_expansion
thf(fact_1580_Maclaurin__cos__expansion,axiom,
    ! [X: real,N: nat] :
    ? [T3: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
      & ( ( cos_real @ X )
        = ( plus_plus_real
          @ ( groups6591440286371151544t_real
            @ ^ [M6: nat] : ( times_times_real @ ( cos_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
            @ ( set_ord_lessThan_nat @ N ) )
          @ ( times_times_real @ ( divide_divide_real @ ( cos_real @ ( plus_plus_real @ T3 @ ( times_times_real @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) ) ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ).

% Maclaurin_cos_expansion
thf(fact_1581_sin__paired,axiom,
    ! [X: real] :
      ( sums_real
      @ ^ [N2: nat] : ( times_times_real @ ( divide_divide_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N2 ) @ ( semiri2265585572941072030t_real @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ one_one_nat ) ) ) @ ( power_power_real @ X @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ one_one_nat ) ) )
      @ ( sin_real @ X ) ) ).

% sin_paired
thf(fact_1582_tan__periodic__pi,axiom,
    ! [X: real] :
      ( ( tan_real @ ( plus_plus_real @ X @ pi ) )
      = ( tan_real @ X ) ) ).

% tan_periodic_pi
thf(fact_1583_tan__npi,axiom,
    ! [N: nat] :
      ( ( tan_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ pi ) )
      = zero_zero_real ) ).

% tan_npi
thf(fact_1584_tan__periodic__n,axiom,
    ! [X: real,N: num] :
      ( ( tan_real @ ( plus_plus_real @ X @ ( times_times_real @ ( numeral_numeral_real @ N ) @ pi ) ) )
      = ( tan_real @ X ) ) ).

% tan_periodic_n
thf(fact_1585_tan__periodic__nat,axiom,
    ! [X: real,N: nat] :
      ( ( tan_real @ ( plus_plus_real @ X @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ pi ) ) )
      = ( tan_real @ X ) ) ).

% tan_periodic_nat
thf(fact_1586_tan__periodic__int,axiom,
    ! [X: real,I2: int] :
      ( ( tan_real @ ( plus_plus_real @ X @ ( times_times_real @ ( ring_1_of_int_real @ I2 ) @ pi ) ) )
      = ( tan_real @ X ) ) ).

% tan_periodic_int
thf(fact_1587_tan__periodic,axiom,
    ! [X: real] :
      ( ( tan_real @ ( plus_plus_real @ X @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) )
      = ( tan_real @ X ) ) ).

% tan_periodic
thf(fact_1588_square__fact__le__2__fact,axiom,
    ! [N: nat] : ( ord_less_eq_real @ ( times_times_real @ ( semiri2265585572941072030t_real @ N ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( semiri2265585572941072030t_real @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% square_fact_le_2_fact
thf(fact_1589_tan__45,axiom,
    ( ( tan_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) )
    = one_one_real ) ).

% tan_45
thf(fact_1590_lemma__tan__total,axiom,
    ! [Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ Y2 )
     => ? [X5: real] :
          ( ( ord_less_real @ zero_zero_real @ X5 )
          & ( ord_less_real @ X5 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
          & ( ord_less_real @ Y2 @ ( tan_real @ X5 ) ) ) ) ).

% lemma_tan_total
thf(fact_1591_tan__gt__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_real @ zero_zero_real @ ( tan_real @ X ) ) ) ) ).

% tan_gt_zero
thf(fact_1592_lemma__tan__total1,axiom,
    ! [Y2: real] :
    ? [X5: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X5 )
      & ( ord_less_real @ X5 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
      & ( ( tan_real @ X5 )
        = Y2 ) ) ).

% lemma_tan_total1
thf(fact_1593_tan__mono__lt__eq,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
         => ( ( ord_less_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ord_less_real @ ( tan_real @ X ) @ ( tan_real @ Y2 ) )
              = ( ord_less_real @ X @ Y2 ) ) ) ) ) ) ).

% tan_mono_lt_eq
thf(fact_1594_tan__monotone_H,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
     => ( ( ord_less_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
         => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ord_less_real @ Y2 @ X )
              = ( ord_less_real @ ( tan_real @ Y2 ) @ ( tan_real @ X ) ) ) ) ) ) ) ).

% tan_monotone'
thf(fact_1595_tan__monotone,axiom,
    ! [Y2: real,X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
     => ( ( ord_less_real @ Y2 @ X )
       => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
         => ( ord_less_real @ ( tan_real @ Y2 ) @ ( tan_real @ X ) ) ) ) ) ).

% tan_monotone
thf(fact_1596_tan__total,axiom,
    ! [Y2: real] :
    ? [X5: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X5 )
      & ( ord_less_real @ X5 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
      & ( ( tan_real @ X5 )
        = Y2 )
      & ! [Y: real] :
          ( ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y )
            & ( ord_less_real @ Y @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
            & ( ( tan_real @ Y )
              = Y2 ) )
         => ( Y = X5 ) ) ) ).

% tan_total
thf(fact_1597_tan__minus__45,axiom,
    ( ( tan_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) ) )
    = ( uminus_uminus_real @ one_one_real ) ) ).

% tan_minus_45
thf(fact_1598_tan__inverse,axiom,
    ! [Y2: real] :
      ( ( divide_divide_real @ one_one_real @ ( tan_real @ Y2 ) )
      = ( tan_real @ ( minus_minus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ Y2 ) ) ) ).

% tan_inverse
thf(fact_1599_tan__pos__pi2__le,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_eq_real @ zero_zero_real @ ( tan_real @ X ) ) ) ) ).

% tan_pos_pi2_le
thf(fact_1600_tan__total__pos,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
     => ? [X5: real] :
          ( ( ord_less_eq_real @ zero_zero_real @ X5 )
          & ( ord_less_real @ X5 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
          & ( ( tan_real @ X5 )
            = Y2 ) ) ) ).

% tan_total_pos
thf(fact_1601_tan__less__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( divide_divide_real @ ( uminus_uminus_real @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ X )
     => ( ( ord_less_real @ X @ zero_zero_real )
       => ( ord_less_real @ ( tan_real @ X ) @ zero_zero_real ) ) ) ).

% tan_less_zero
thf(fact_1602_tan__mono__le__eq,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ Y2 )
         => ( ( ord_less_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ord_less_eq_real @ ( tan_real @ X ) @ ( tan_real @ Y2 ) )
              = ( ord_less_eq_real @ X @ Y2 ) ) ) ) ) ) ).

% tan_mono_le_eq
thf(fact_1603_tan__mono__le,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_eq_real @ X @ Y2 )
       => ( ( ord_less_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
         => ( ord_less_eq_real @ ( tan_real @ X ) @ ( tan_real @ Y2 ) ) ) ) ) ).

% tan_mono_le
thf(fact_1604_tan__bound__pi2,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) )
     => ( ord_less_real @ ( abs_abs_real @ ( tan_real @ X ) ) @ one_one_real ) ) ).

% tan_bound_pi2
thf(fact_1605_arctan__unique,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ( tan_real @ X )
            = Y2 )
         => ( ( arctan @ Y2 )
            = X ) ) ) ) ).

% arctan_unique
thf(fact_1606_arctan__tan,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( arctan @ ( tan_real @ X ) )
          = X ) ) ) ).

% arctan_tan
thf(fact_1607_arctan,axiom,
    ! [Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arctan @ Y2 ) )
      & ( ord_less_real @ ( arctan @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
      & ( ( tan_real @ ( arctan @ Y2 ) )
        = Y2 ) ) ).

% arctan
thf(fact_1608_Maclaurin__lemma,axiom,
    ! [H2: real,F: real > real,J: nat > real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ H2 )
     => ? [B6: real] :
          ( ( F @ H2 )
          = ( plus_plus_real
            @ ( groups6591440286371151544t_real
              @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( J @ M6 ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ H2 @ M6 ) )
              @ ( set_ord_lessThan_nat @ N ) )
            @ ( times_times_real @ B6 @ ( divide_divide_real @ ( power_power_real @ H2 @ N ) @ ( semiri2265585572941072030t_real @ N ) ) ) ) ) ) ).

% Maclaurin_lemma
thf(fact_1609_tan__total__pi4,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ? [Z3: real] :
          ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) ) @ Z3 )
          & ( ord_less_real @ Z3 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) )
          & ( ( tan_real @ Z3 )
            = X ) ) ) ).

% tan_total_pi4
thf(fact_1610_cos__coeff__def,axiom,
    ( cos_coeff
    = ( ^ [N2: nat] : ( if_real @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ ( divide_divide_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( semiri2265585572941072030t_real @ N2 ) ) @ zero_zero_real ) ) ) ).

% cos_coeff_def
thf(fact_1611_cos__paired,axiom,
    ! [X: real] :
      ( sums_real
      @ ^ [N2: nat] : ( times_times_real @ ( divide_divide_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N2 ) @ ( semiri2265585572941072030t_real @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) @ ( power_power_real @ X @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) )
      @ ( cos_real @ X ) ) ).

% cos_paired
thf(fact_1612_Maclaurin__sin__expansion3,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ? [T3: real] :
            ( ( ord_less_real @ zero_zero_real @ T3 )
            & ( ord_less_real @ T3 @ X )
            & ( ( sin_real @ X )
              = ( plus_plus_real
                @ ( groups6591440286371151544t_real
                  @ ^ [M6: nat] : ( times_times_real @ ( sin_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
                  @ ( set_ord_lessThan_nat @ N ) )
                @ ( times_times_real @ ( divide_divide_real @ ( sin_real @ ( plus_plus_real @ T3 @ ( times_times_real @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) ) ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ) ).

% Maclaurin_sin_expansion3
thf(fact_1613_Maclaurin__sin__expansion4,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ? [T3: real] :
          ( ( ord_less_real @ zero_zero_real @ T3 )
          & ( ord_less_eq_real @ T3 @ X )
          & ( ( sin_real @ X )
            = ( plus_plus_real
              @ ( groups6591440286371151544t_real
                @ ^ [M6: nat] : ( times_times_real @ ( sin_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
                @ ( set_ord_lessThan_nat @ N ) )
              @ ( times_times_real @ ( divide_divide_real @ ( sin_real @ ( plus_plus_real @ T3 @ ( times_times_real @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) ) ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ).

% Maclaurin_sin_expansion4
thf(fact_1614_Maclaurin__sin__expansion2,axiom,
    ! [X: real,N: nat] :
    ? [T3: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
      & ( ( sin_real @ X )
        = ( plus_plus_real
          @ ( groups6591440286371151544t_real
            @ ^ [M6: nat] : ( times_times_real @ ( sin_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
            @ ( set_ord_lessThan_nat @ N ) )
          @ ( times_times_real @ ( divide_divide_real @ ( sin_real @ ( plus_plus_real @ T3 @ ( times_times_real @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) ) ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ).

% Maclaurin_sin_expansion2
thf(fact_1615_Maclaurin__sin__expansion,axiom,
    ! [X: real,N: nat] :
    ? [T3: real] :
      ( ( sin_real @ X )
      = ( plus_plus_real
        @ ( groups6591440286371151544t_real
          @ ^ [M6: nat] : ( times_times_real @ ( sin_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
          @ ( set_ord_lessThan_nat @ N ) )
        @ ( times_times_real @ ( divide_divide_real @ ( sin_real @ ( plus_plus_real @ T3 @ ( times_times_real @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( semiri5074537144036343181t_real @ N ) ) @ pi ) ) ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ).

% Maclaurin_sin_expansion
thf(fact_1616_sin__coeff__def,axiom,
    ( sin_coeff
    = ( ^ [N2: nat] : ( if_real @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ zero_zero_real @ ( divide_divide_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ ( divide_divide_nat @ ( minus_minus_nat @ N2 @ ( suc @ zero_zero_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( semiri2265585572941072030t_real @ N2 ) ) ) ) ) ).

% sin_coeff_def
thf(fact_1617_fact__ge__self,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_self
thf(fact_1618_fact__mono__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ).

% fact_mono_nat
thf(fact_1619_fact__less__mono__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% fact_less_mono_nat
thf(fact_1620_fact__ge__Suc__0__nat,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_Suc_0_nat
thf(fact_1621_dvd__fact,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( dvd_dvd_nat @ M @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% dvd_fact
thf(fact_1622_fact__diff__Suc,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ ( suc @ M ) )
     => ( ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) )
        = ( times_times_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ M @ N ) ) ) ) ) ).

% fact_diff_Suc
thf(fact_1623_fact__div__fact__le__pow,axiom,
    ! [R2: nat,N: nat] :
      ( ( ord_less_eq_nat @ R2 @ N )
     => ( ord_less_eq_nat @ ( divide_divide_nat @ ( semiri1408675320244567234ct_nat @ N ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ R2 ) ) ) @ ( power_power_nat @ N @ R2 ) ) ) ).

% fact_div_fact_le_pow
thf(fact_1624_fact__eq__fact__times,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri1408675320244567234ct_nat @ M )
        = ( times_times_nat @ ( semiri1408675320244567234ct_nat @ N )
          @ ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( suc @ N ) @ M ) ) ) ) ) ).

% fact_eq_fact_times
thf(fact_1625_fact__div__fact,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( divide_divide_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ M ) ) ) ) ).

% fact_div_fact
thf(fact_1626_sin__coeff__Suc,axiom,
    ! [N: nat] :
      ( ( sin_coeff @ ( suc @ N ) )
      = ( divide_divide_real @ ( cos_coeff @ N ) @ ( semiri5074537144036343181t_real @ ( suc @ N ) ) ) ) ).

% sin_coeff_Suc
thf(fact_1627_cos__coeff__Suc,axiom,
    ! [N: nat] :
      ( ( cos_coeff @ ( suc @ N ) )
      = ( divide_divide_real @ ( uminus_uminus_real @ ( sin_coeff @ N ) ) @ ( semiri5074537144036343181t_real @ ( suc @ N ) ) ) ) ).

% cos_coeff_Suc
thf(fact_1628_sin__tan,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
     => ( ( sin_real @ X )
        = ( divide_divide_real @ ( tan_real @ X ) @ ( sqrt @ ( plus_plus_real @ one_one_real @ ( power_power_real @ ( tan_real @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% sin_tan
thf(fact_1629_cos__tan,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
     => ( ( cos_real @ X )
        = ( divide_divide_real @ one_one_real @ ( sqrt @ ( plus_plus_real @ one_one_real @ ( power_power_real @ ( tan_real @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% cos_tan
thf(fact_1630_complex__unimodular__polar,axiom,
    ! [Z: complex] :
      ( ( ( real_V1022390504157884413omplex @ Z )
        = one_one_real )
     => ~ ! [T3: real] :
            ( ( ord_less_eq_real @ zero_zero_real @ T3 )
           => ( ( ord_less_real @ T3 @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
             => ( Z
               != ( complex2 @ ( cos_real @ T3 ) @ ( sin_real @ T3 ) ) ) ) ) ) ).

% complex_unimodular_polar
thf(fact_1631_Maclaurin__exp__lt,axiom,
    ! [X: real,N: nat] :
      ( ( X != zero_zero_real )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ? [T3: real] :
            ( ( ord_less_real @ zero_zero_real @ ( abs_abs_real @ T3 ) )
            & ( ord_less_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
            & ( ( exp_real @ X )
              = ( plus_plus_real
                @ ( groups6591440286371151544t_real
                  @ ^ [M6: nat] : ( divide_divide_real @ ( power_power_real @ X @ M6 ) @ ( semiri2265585572941072030t_real @ M6 ) )
                  @ ( set_ord_lessThan_nat @ N ) )
                @ ( times_times_real @ ( divide_divide_real @ ( exp_real @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ) ).

% Maclaurin_exp_lt
thf(fact_1632_binomial__code,axiom,
    ( binomial
    = ( ^ [N2: nat,K3: nat] : ( if_nat @ ( ord_less_nat @ N2 @ K3 ) @ zero_zero_nat @ ( if_nat @ ( ord_less_nat @ N2 @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K3 ) ) @ ( binomial @ N2 @ ( minus_minus_nat @ N2 @ K3 ) ) @ ( divide_divide_nat @ ( set_fo2584398358068434914at_nat @ times_times_nat @ ( plus_plus_nat @ ( minus_minus_nat @ N2 @ K3 ) @ one_one_nat ) @ N2 @ one_one_nat ) @ ( semiri1408675320244567234ct_nat @ K3 ) ) ) ) ) ) ).

% binomial_code
thf(fact_1633_real__sqrt__eq__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ( sqrt @ X )
        = ( sqrt @ Y2 ) )
      = ( X = Y2 ) ) ).

% real_sqrt_eq_iff
thf(fact_1634_real__sqrt__zero,axiom,
    ( ( sqrt @ zero_zero_real )
    = zero_zero_real ) ).

% real_sqrt_zero
thf(fact_1635_real__sqrt__eq__zero__cancel__iff,axiom,
    ! [X: real] :
      ( ( ( sqrt @ X )
        = zero_zero_real )
      = ( X = zero_zero_real ) ) ).

% real_sqrt_eq_zero_cancel_iff
thf(fact_1636_real__sqrt__less__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ ( sqrt @ X ) @ ( sqrt @ Y2 ) )
      = ( ord_less_real @ X @ Y2 ) ) ).

% real_sqrt_less_iff
thf(fact_1637_real__sqrt__le__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( sqrt @ X ) @ ( sqrt @ Y2 ) )
      = ( ord_less_eq_real @ X @ Y2 ) ) ).

% real_sqrt_le_iff
thf(fact_1638_binomial__Suc__n,axiom,
    ! [N: nat] :
      ( ( binomial @ ( suc @ N ) @ N )
      = ( suc @ N ) ) ).

% binomial_Suc_n
thf(fact_1639_real__sqrt__one,axiom,
    ( ( sqrt @ one_one_real )
    = one_one_real ) ).

% real_sqrt_one
thf(fact_1640_real__sqrt__eq__1__iff,axiom,
    ! [X: real] :
      ( ( ( sqrt @ X )
        = one_one_real )
      = ( X = one_one_real ) ) ).

% real_sqrt_eq_1_iff
thf(fact_1641_exp__le__cancel__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( exp_real @ X ) @ ( exp_real @ Y2 ) )
      = ( ord_less_eq_real @ X @ Y2 ) ) ).

% exp_le_cancel_iff
thf(fact_1642_binomial__n__n,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ N )
      = one_one_nat ) ).

% binomial_n_n
thf(fact_1643_real__sqrt__gt__0__iff,axiom,
    ! [Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ ( sqrt @ Y2 ) )
      = ( ord_less_real @ zero_zero_real @ Y2 ) ) ).

% real_sqrt_gt_0_iff
thf(fact_1644_real__sqrt__lt__0__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( sqrt @ X ) @ zero_zero_real )
      = ( ord_less_real @ X @ zero_zero_real ) ) ).

% real_sqrt_lt_0_iff
thf(fact_1645_binomial__0__Suc,axiom,
    ! [K: nat] :
      ( ( binomial @ zero_zero_nat @ ( suc @ K ) )
      = zero_zero_nat ) ).

% binomial_0_Suc
thf(fact_1646_binomial__1,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ ( suc @ zero_zero_nat ) )
      = N ) ).

% binomial_1
thf(fact_1647_real__sqrt__le__0__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( sqrt @ X ) @ zero_zero_real )
      = ( ord_less_eq_real @ X @ zero_zero_real ) ) ).

% real_sqrt_le_0_iff
thf(fact_1648_real__sqrt__ge__0__iff,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( sqrt @ Y2 ) )
      = ( ord_less_eq_real @ zero_zero_real @ Y2 ) ) ).

% real_sqrt_ge_0_iff
thf(fact_1649_binomial__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( binomial @ N @ K )
        = zero_zero_nat )
      = ( ord_less_nat @ N @ K ) ) ).

% binomial_eq_0_iff
thf(fact_1650_real__sqrt__gt__1__iff,axiom,
    ! [Y2: real] :
      ( ( ord_less_real @ one_one_real @ ( sqrt @ Y2 ) )
      = ( ord_less_real @ one_one_real @ Y2 ) ) ).

% real_sqrt_gt_1_iff
thf(fact_1651_real__sqrt__lt__1__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( sqrt @ X ) @ one_one_real )
      = ( ord_less_real @ X @ one_one_real ) ) ).

% real_sqrt_lt_1_iff
thf(fact_1652_binomial__Suc__Suc,axiom,
    ! [N: nat,K: nat] :
      ( ( binomial @ ( suc @ N ) @ ( suc @ K ) )
      = ( plus_plus_nat @ ( binomial @ N @ K ) @ ( binomial @ N @ ( suc @ K ) ) ) ) ).

% binomial_Suc_Suc
thf(fact_1653_real__sqrt__le__1__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( sqrt @ X ) @ one_one_real )
      = ( ord_less_eq_real @ X @ one_one_real ) ) ).

% real_sqrt_le_1_iff
thf(fact_1654_real__sqrt__ge__1__iff,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ one_one_real @ ( sqrt @ Y2 ) )
      = ( ord_less_eq_real @ one_one_real @ Y2 ) ) ).

% real_sqrt_ge_1_iff
thf(fact_1655_binomial__n__0,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ zero_zero_nat )
      = one_one_nat ) ).

% binomial_n_0
thf(fact_1656_exp__eq__one__iff,axiom,
    ! [X: real] :
      ( ( ( exp_real @ X )
        = one_one_real )
      = ( X = zero_zero_real ) ) ).

% exp_eq_one_iff
thf(fact_1657_real__sqrt__mult__self,axiom,
    ! [A: real] :
      ( ( times_times_real @ ( sqrt @ A ) @ ( sqrt @ A ) )
      = ( abs_abs_real @ A ) ) ).

% real_sqrt_mult_self
thf(fact_1658_real__sqrt__abs2,axiom,
    ! [X: real] :
      ( ( sqrt @ ( times_times_real @ X @ X ) )
      = ( abs_abs_real @ X ) ) ).

% real_sqrt_abs2
thf(fact_1659_real__sqrt__four,axiom,
    ( ( sqrt @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) )
    = ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% real_sqrt_four
thf(fact_1660_zero__less__binomial__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( binomial @ N @ K ) )
      = ( ord_less_eq_nat @ K @ N ) ) ).

% zero_less_binomial_iff
thf(fact_1661_one__less__exp__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ one_one_real @ ( exp_real @ X ) )
      = ( ord_less_real @ zero_zero_real @ X ) ) ).

% one_less_exp_iff
thf(fact_1662_exp__less__one__iff,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( exp_real @ X ) @ one_one_real )
      = ( ord_less_real @ X @ zero_zero_real ) ) ).

% exp_less_one_iff
thf(fact_1663_one__le__exp__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ one_one_real @ ( exp_real @ X ) )
      = ( ord_less_eq_real @ zero_zero_real @ X ) ) ).

% one_le_exp_iff
thf(fact_1664_exp__le__one__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( exp_real @ X ) @ one_one_real )
      = ( ord_less_eq_real @ X @ zero_zero_real ) ) ).

% exp_le_one_iff
thf(fact_1665_norm__cos__sin,axiom,
    ! [T: real] :
      ( ( real_V1022390504157884413omplex @ ( complex2 @ ( cos_real @ T ) @ ( sin_real @ T ) ) )
      = one_one_real ) ).

% norm_cos_sin
thf(fact_1666_real__sqrt__abs,axiom,
    ! [X: real] :
      ( ( sqrt @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( abs_abs_real @ X ) ) ).

% real_sqrt_abs
thf(fact_1667_real__sqrt__pow2__iff,axiom,
    ! [X: real] :
      ( ( ( power_power_real @ ( sqrt @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = X )
      = ( ord_less_eq_real @ zero_zero_real @ X ) ) ).

% real_sqrt_pow2_iff
thf(fact_1668_real__sqrt__pow2,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( power_power_real @ ( sqrt @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = X ) ) ).

% real_sqrt_pow2
thf(fact_1669_real__sqrt__sum__squares__mult__squared__eq,axiom,
    ! [X: real,Y2: real,Xa2: real,Ya: real] :
      ( ( power_power_real @ ( sqrt @ ( times_times_real @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( plus_plus_real @ ( power_power_real @ Xa2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Ya @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( times_times_real @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( plus_plus_real @ ( power_power_real @ Xa2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Ya @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% real_sqrt_sum_squares_mult_squared_eq
thf(fact_1670_real__sqrt__power,axiom,
    ! [X: real,K: nat] :
      ( ( sqrt @ ( power_power_real @ X @ K ) )
      = ( power_power_real @ ( sqrt @ X ) @ K ) ) ).

% real_sqrt_power
thf(fact_1671_choose__one,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ one_one_nat )
      = N ) ).

% choose_one
thf(fact_1672_real__sqrt__le__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ X @ Y2 )
     => ( ord_less_eq_real @ ( sqrt @ X ) @ ( sqrt @ Y2 ) ) ) ).

% real_sqrt_le_mono
thf(fact_1673_real__sqrt__less__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ X @ Y2 )
     => ( ord_less_real @ ( sqrt @ X ) @ ( sqrt @ Y2 ) ) ) ).

% real_sqrt_less_mono
thf(fact_1674_real__sqrt__minus,axiom,
    ! [X: real] :
      ( ( sqrt @ ( uminus_uminus_real @ X ) )
      = ( uminus_uminus_real @ ( sqrt @ X ) ) ) ).

% real_sqrt_minus
thf(fact_1675_real__sqrt__mult,axiom,
    ! [X: real,Y2: real] :
      ( ( sqrt @ ( times_times_real @ X @ Y2 ) )
      = ( times_times_real @ ( sqrt @ X ) @ ( sqrt @ Y2 ) ) ) ).

% real_sqrt_mult
thf(fact_1676_real__sqrt__divide,axiom,
    ! [X: real,Y2: real] :
      ( ( sqrt @ ( divide_divide_real @ X @ Y2 ) )
      = ( divide_divide_real @ ( sqrt @ X ) @ ( sqrt @ Y2 ) ) ) ).

% real_sqrt_divide
thf(fact_1677_binomial__eq__0,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( binomial @ N @ K )
        = zero_zero_nat ) ) ).

% binomial_eq_0
thf(fact_1678_Suc__times__binomial,axiom,
    ! [K: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ K ) @ ( binomial @ ( suc @ N ) @ ( suc @ K ) ) )
      = ( times_times_nat @ ( suc @ N ) @ ( binomial @ N @ K ) ) ) ).

% Suc_times_binomial
thf(fact_1679_Suc__times__binomial__eq,axiom,
    ! [N: nat,K: nat] :
      ( ( times_times_nat @ ( suc @ N ) @ ( binomial @ N @ K ) )
      = ( times_times_nat @ ( binomial @ ( suc @ N ) @ ( suc @ K ) ) @ ( suc @ K ) ) ) ).

% Suc_times_binomial_eq
thf(fact_1680_real__sqrt__gt__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ord_less_real @ zero_zero_real @ ( sqrt @ X ) ) ) ).

% real_sqrt_gt_zero
thf(fact_1681_binomial__symmetric,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( binomial @ N @ K )
        = ( binomial @ N @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% binomial_symmetric
thf(fact_1682_real__sqrt__eq__zero__cancel,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ( sqrt @ X )
          = zero_zero_real )
       => ( X = zero_zero_real ) ) ) ).

% real_sqrt_eq_zero_cancel
thf(fact_1683_real__sqrt__ge__zero,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ zero_zero_real @ ( sqrt @ X ) ) ) ).

% real_sqrt_ge_zero
thf(fact_1684_exp__ge__zero,axiom,
    ! [X: real] : ( ord_less_eq_real @ zero_zero_real @ ( exp_real @ X ) ) ).

% exp_ge_zero
thf(fact_1685_not__exp__le__zero,axiom,
    ! [X: real] :
      ~ ( ord_less_eq_real @ ( exp_real @ X ) @ zero_zero_real ) ).

% not_exp_le_zero
thf(fact_1686_choose__mult__lemma,axiom,
    ! [M: nat,R2: nat,K: nat] :
      ( ( times_times_nat @ ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ M @ R2 ) @ K ) @ ( plus_plus_nat @ M @ K ) ) @ ( binomial @ ( plus_plus_nat @ M @ K ) @ K ) )
      = ( times_times_nat @ ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ M @ R2 ) @ K ) @ K ) @ ( binomial @ ( plus_plus_nat @ M @ R2 ) @ M ) ) ) ).

% choose_mult_lemma
thf(fact_1687_real__sqrt__ge__one,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ one_one_real @ X )
     => ( ord_less_eq_real @ one_one_real @ ( sqrt @ X ) ) ) ).

% real_sqrt_ge_one
thf(fact_1688_binomial__le__pow,axiom,
    ! [R2: nat,N: nat] :
      ( ( ord_less_eq_nat @ R2 @ N )
     => ( ord_less_eq_nat @ ( binomial @ N @ R2 ) @ ( power_power_nat @ N @ R2 ) ) ) ).

% binomial_le_pow
thf(fact_1689_Complex__eq__numeral,axiom,
    ! [A: real,B: real,W: num] :
      ( ( ( complex2 @ A @ B )
        = ( numera6690914467698888265omplex @ W ) )
      = ( ( A
          = ( numeral_numeral_real @ W ) )
        & ( B = zero_zero_real ) ) ) ).

% Complex_eq_numeral
thf(fact_1690_complex__add,axiom,
    ! [A: real,B: real,C: real,D: real] :
      ( ( plus_plus_complex @ ( complex2 @ A @ B ) @ ( complex2 @ C @ D ) )
      = ( complex2 @ ( plus_plus_real @ A @ C ) @ ( plus_plus_real @ B @ D ) ) ) ).

% complex_add
thf(fact_1691_zero__less__binomial,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( binomial @ N @ K ) ) ) ).

% zero_less_binomial
thf(fact_1692_Suc__times__binomial__add,axiom,
    ! [A: nat,B: nat] :
      ( ( times_times_nat @ ( suc @ A ) @ ( binomial @ ( suc @ ( plus_plus_nat @ A @ B ) ) @ ( suc @ A ) ) )
      = ( times_times_nat @ ( suc @ B ) @ ( binomial @ ( suc @ ( plus_plus_nat @ A @ B ) ) @ A ) ) ) ).

% Suc_times_binomial_add
thf(fact_1693_complex__norm,axiom,
    ! [X: real,Y2: real] :
      ( ( real_V1022390504157884413omplex @ ( complex2 @ X @ Y2 ) )
      = ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% complex_norm
thf(fact_1694_choose__mult,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ( times_times_nat @ ( binomial @ N @ M ) @ ( binomial @ M @ K ) )
          = ( times_times_nat @ ( binomial @ N @ K ) @ ( binomial @ ( minus_minus_nat @ N @ K ) @ ( minus_minus_nat @ M @ K ) ) ) ) ) ) ).

% choose_mult
thf(fact_1695_binomial__fact__lemma,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( times_times_nat @ ( times_times_nat @ ( semiri1408675320244567234ct_nat @ K ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ K ) ) ) @ ( binomial @ N @ K ) )
        = ( semiri1408675320244567234ct_nat @ N ) ) ) ).

% binomial_fact_lemma
thf(fact_1696_binomial__Suc__Suc__eq__times,axiom,
    ! [N: nat,K: nat] :
      ( ( binomial @ ( suc @ N ) @ ( suc @ K ) )
      = ( divide_divide_nat @ ( times_times_nat @ ( suc @ N ) @ ( binomial @ N @ K ) ) @ ( suc @ K ) ) ) ).

% binomial_Suc_Suc_eq_times
thf(fact_1697_exp__gt__one,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ord_less_real @ one_one_real @ ( exp_real @ X ) ) ) ).

% exp_gt_one
thf(fact_1698_real__div__sqrt,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( divide_divide_real @ X @ ( sqrt @ X ) )
        = ( sqrt @ X ) ) ) ).

% real_div_sqrt
thf(fact_1699_binomial__absorb__comp,axiom,
    ! [N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ N @ K ) @ ( binomial @ N @ K ) )
      = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ).

% binomial_absorb_comp
thf(fact_1700_sqrt__add__le__add__sqrt,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ord_less_eq_real @ ( sqrt @ ( plus_plus_real @ X @ Y2 ) ) @ ( plus_plus_real @ ( sqrt @ X ) @ ( sqrt @ Y2 ) ) ) ) ) ).

% sqrt_add_le_add_sqrt
thf(fact_1701_exp__ge__add__one__self,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( plus_plus_real @ one_one_real @ X ) @ ( exp_real @ X ) ) ).

% exp_ge_add_one_self
thf(fact_1702_le__real__sqrt__sumsq,axiom,
    ! [X: real,Y2: real] : ( ord_less_eq_real @ X @ ( sqrt @ ( plus_plus_real @ ( times_times_real @ X @ X ) @ ( times_times_real @ Y2 @ Y2 ) ) ) ) ).

% le_real_sqrt_sumsq
thf(fact_1703_Complex__eq__neg__numeral,axiom,
    ! [A: real,B: real,W: num] :
      ( ( ( complex2 @ A @ B )
        = ( uminus1482373934393186551omplex @ ( numera6690914467698888265omplex @ W ) ) )
      = ( ( A
          = ( uminus_uminus_real @ ( numeral_numeral_real @ W ) ) )
        & ( B = zero_zero_real ) ) ) ).

% Complex_eq_neg_numeral
thf(fact_1704_complex__mult,axiom,
    ! [A: real,B: real,C: real,D: real] :
      ( ( times_times_complex @ ( complex2 @ A @ B ) @ ( complex2 @ C @ D ) )
      = ( complex2 @ ( minus_minus_real @ ( times_times_real @ A @ C ) @ ( times_times_real @ B @ D ) ) @ ( plus_plus_real @ ( times_times_real @ A @ D ) @ ( times_times_real @ B @ C ) ) ) ) ).

% complex_mult
thf(fact_1705_one__complex_Ocode,axiom,
    ( one_one_complex
    = ( complex2 @ one_one_real @ zero_zero_real ) ) ).

% one_complex.code
thf(fact_1706_Complex__eq__1,axiom,
    ! [A: real,B: real] :
      ( ( ( complex2 @ A @ B )
        = one_one_complex )
      = ( ( A = one_one_real )
        & ( B = zero_zero_real ) ) ) ).

% Complex_eq_1
thf(fact_1707_sqrt2__less__2,axiom,
    ord_less_real @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ).

% sqrt2_less_2
thf(fact_1708_binomial__absorption,axiom,
    ! [K: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ K ) @ ( binomial @ N @ ( suc @ K ) ) )
      = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ).

% binomial_absorption
thf(fact_1709_binomial__altdef__nat,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( binomial @ N @ K )
        = ( divide_divide_nat @ ( semiri1408675320244567234ct_nat @ N ) @ ( times_times_nat @ ( semiri1408675320244567234ct_nat @ K ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ K ) ) ) ) ) ) ).

% binomial_altdef_nat
thf(fact_1710_exp__ge__add__one__self__aux,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( plus_plus_real @ one_one_real @ X ) @ ( exp_real @ X ) ) ) ).

% exp_ge_add_one_self_aux
thf(fact_1711_lemma__exp__total,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ one_one_real @ Y2 )
     => ? [X5: real] :
          ( ( ord_less_eq_real @ zero_zero_real @ X5 )
          & ( ord_less_eq_real @ X5 @ ( minus_minus_real @ Y2 @ one_one_real ) )
          & ( ( exp_real @ X5 )
            = Y2 ) ) ) ).

% lemma_exp_total
thf(fact_1712_ln__ge__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ Y2 @ ( ln_ln_real @ X ) )
        = ( ord_less_eq_real @ ( exp_real @ Y2 ) @ X ) ) ) ).

% ln_ge_iff
thf(fact_1713_ln__x__over__x__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( exp_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ Y2 )
       => ( ord_less_eq_real @ ( divide_divide_real @ ( ln_ln_real @ Y2 ) @ Y2 ) @ ( divide_divide_real @ ( ln_ln_real @ X ) @ X ) ) ) ) ).

% ln_x_over_x_mono
thf(fact_1714_Complex__eq__neg__1,axiom,
    ! [A: real,B: real] :
      ( ( ( complex2 @ A @ B )
        = ( uminus1482373934393186551omplex @ one_one_complex ) )
      = ( ( A
          = ( uminus_uminus_real @ one_one_real ) )
        & ( B = zero_zero_real ) ) ) ).

% Complex_eq_neg_1
thf(fact_1715_binomial__maximum_H,axiom,
    ! [N: nat,K: nat] : ( ord_less_eq_nat @ ( binomial @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ K ) @ ( binomial @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ N ) ) ).

% binomial_maximum'
thf(fact_1716_binomial__mono,axiom,
    ! [K: nat,K4: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ K4 )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K4 ) @ N )
       => ( ord_less_eq_nat @ ( binomial @ N @ K ) @ ( binomial @ N @ K4 ) ) ) ) ).

% binomial_mono
thf(fact_1717_binomial__antimono,axiom,
    ! [K: nat,K4: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ K4 )
     => ( ( ord_less_eq_nat @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ K )
       => ( ( ord_less_eq_nat @ K4 @ N )
         => ( ord_less_eq_nat @ ( binomial @ N @ K4 ) @ ( binomial @ N @ K ) ) ) ) ) ).

% binomial_antimono
thf(fact_1718_binomial__maximum,axiom,
    ! [N: nat,K: nat] : ( ord_less_eq_nat @ ( binomial @ N @ K ) @ ( binomial @ N @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% binomial_maximum
thf(fact_1719_binomial__le__pow2,axiom,
    ! [N: nat,K: nat] : ( ord_less_eq_nat @ ( binomial @ N @ K ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% binomial_le_pow2
thf(fact_1720_real__less__rsqrt,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ Y2 )
     => ( ord_less_real @ X @ ( sqrt @ Y2 ) ) ) ).

% real_less_rsqrt
thf(fact_1721_choose__reduce__nat,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ( binomial @ N @ K )
          = ( plus_plus_nat @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ) ) ).

% choose_reduce_nat
thf(fact_1722_real__le__rsqrt,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ Y2 )
     => ( ord_less_eq_real @ X @ ( sqrt @ Y2 ) ) ) ).

% real_le_rsqrt
thf(fact_1723_sqrt__le__D,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( sqrt @ X ) @ Y2 )
     => ( ord_less_eq_real @ X @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% sqrt_le_D
thf(fact_1724_times__binomial__minus1__eq,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( times_times_nat @ K @ ( binomial @ N @ K ) )
        = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) ) ) ) ).

% times_binomial_minus1_eq
thf(fact_1725_exp__le,axiom,
    ord_less_eq_real @ ( exp_real @ one_one_real ) @ ( numeral_numeral_real @ ( bit1 @ one ) ) ).

% exp_le
thf(fact_1726_binomial__less__binomial__Suc,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_nat @ K @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ord_less_nat @ ( binomial @ N @ K ) @ ( binomial @ N @ ( suc @ K ) ) ) ) ).

% binomial_less_binomial_Suc
thf(fact_1727_binomial__strict__antimono,axiom,
    ! [K: nat,K4: nat,N: nat] :
      ( ( ord_less_nat @ K @ K4 )
     => ( ( ord_less_eq_nat @ N @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K ) )
       => ( ( ord_less_eq_nat @ K4 @ N )
         => ( ord_less_nat @ ( binomial @ N @ K4 ) @ ( binomial @ N @ K ) ) ) ) ) ).

% binomial_strict_antimono
thf(fact_1728_binomial__strict__mono,axiom,
    ! [K: nat,K4: nat,N: nat] :
      ( ( ord_less_nat @ K @ K4 )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K4 ) @ N )
       => ( ord_less_nat @ ( binomial @ N @ K ) @ ( binomial @ N @ K4 ) ) ) ) ).

% binomial_strict_mono
thf(fact_1729_central__binomial__odd,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( binomial @ N @ ( suc @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
        = ( binomial @ N @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% central_binomial_odd
thf(fact_1730_binomial__addition__formula,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( binomial @ N @ ( suc @ K ) )
        = ( plus_plus_nat @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( suc @ K ) ) @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ) ).

% binomial_addition_formula
thf(fact_1731_real__sqrt__unique,axiom,
    ! [Y2: real,X: real] :
      ( ( ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( sqrt @ X )
          = Y2 ) ) ) ).

% real_sqrt_unique
thf(fact_1732_real__le__lsqrt,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( ord_less_eq_real @ X @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
         => ( ord_less_eq_real @ ( sqrt @ X ) @ Y2 ) ) ) ) ).

% real_le_lsqrt
thf(fact_1733_lemma__real__divide__sqrt__less,axiom,
    ! [U: real] :
      ( ( ord_less_real @ zero_zero_real @ U )
     => ( ord_less_real @ ( divide_divide_real @ U @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ U ) ) ).

% lemma_real_divide_sqrt_less
thf(fact_1734_real__sqrt__sum__squares__eq__cancel2,axiom,
    ! [X: real,Y2: real] :
      ( ( ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
        = Y2 )
     => ( X = zero_zero_real ) ) ).

% real_sqrt_sum_squares_eq_cancel2
thf(fact_1735_real__sqrt__sum__squares__eq__cancel,axiom,
    ! [X: real,Y2: real] :
      ( ( ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
        = X )
     => ( Y2 = zero_zero_real ) ) ).

% real_sqrt_sum_squares_eq_cancel
thf(fact_1736_exp__half__le2,axiom,
    ord_less_eq_real @ ( exp_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ).

% exp_half_le2
thf(fact_1737_real__sqrt__sum__squares__triangle__ineq,axiom,
    ! [A: real,C: real,B: real,D: real] : ( ord_less_eq_real @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ ( plus_plus_real @ A @ C ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( plus_plus_real @ B @ D ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( plus_plus_real @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ B @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ C @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ D @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% real_sqrt_sum_squares_triangle_ineq
thf(fact_1738_real__sqrt__sum__squares__ge2,axiom,
    ! [Y2: real,X: real] : ( ord_less_eq_real @ Y2 @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% real_sqrt_sum_squares_ge2
thf(fact_1739_real__sqrt__sum__squares__ge1,axiom,
    ! [X: real,Y2: real] : ( ord_less_eq_real @ X @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% real_sqrt_sum_squares_ge1
thf(fact_1740_sqrt__ge__absD,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ ( sqrt @ Y2 ) )
     => ( ord_less_eq_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ Y2 ) ) ).

% sqrt_ge_absD
thf(fact_1741_cos__45,axiom,
    ( ( cos_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) )
    = ( divide_divide_real @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% cos_45
thf(fact_1742_sin__45,axiom,
    ( ( sin_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) ) )
    = ( divide_divide_real @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% sin_45
thf(fact_1743_tan__60,axiom,
    ( ( tan_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit1 @ one ) ) ) )
    = ( sqrt @ ( numeral_numeral_real @ ( bit1 @ one ) ) ) ) ).

% tan_60
thf(fact_1744_choose__two,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( divide_divide_nat @ ( times_times_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% choose_two
thf(fact_1745_real__less__lsqrt,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( ord_less_real @ X @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
         => ( ord_less_real @ ( sqrt @ X ) @ Y2 ) ) ) ) ).

% real_less_lsqrt
thf(fact_1746_sqrt__sum__squares__le__sum,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ord_less_eq_real @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( plus_plus_real @ X @ Y2 ) ) ) ) ).

% sqrt_sum_squares_le_sum
thf(fact_1747_sqrt__even__pow2,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( sqrt @ ( power_power_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ N ) )
        = ( power_power_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% sqrt_even_pow2
thf(fact_1748_real__sqrt__ge__abs1,axiom,
    ! [X: real,Y2: real] : ( ord_less_eq_real @ ( abs_abs_real @ X ) @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% real_sqrt_ge_abs1
thf(fact_1749_real__sqrt__ge__abs2,axiom,
    ! [Y2: real,X: real] : ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% real_sqrt_ge_abs2
thf(fact_1750_sqrt__sum__squares__le__sum__abs,axiom,
    ! [X: real,Y2: real] : ( ord_less_eq_real @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( plus_plus_real @ ( abs_abs_real @ X ) @ ( abs_abs_real @ Y2 ) ) ) ).

% sqrt_sum_squares_le_sum_abs
thf(fact_1751_ln__sqrt,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ln_ln_real @ ( sqrt @ X ) )
        = ( divide_divide_real @ ( ln_ln_real @ X ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% ln_sqrt
thf(fact_1752_cos__30,axiom,
    ( ( cos_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit1 @ one ) ) ) ) )
    = ( divide_divide_real @ ( sqrt @ ( numeral_numeral_real @ ( bit1 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% cos_30
thf(fact_1753_sin__60,axiom,
    ( ( sin_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit1 @ one ) ) ) )
    = ( divide_divide_real @ ( sqrt @ ( numeral_numeral_real @ ( bit1 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% sin_60
thf(fact_1754_arsinh__real__aux,axiom,
    ! [X: real] : ( ord_less_real @ zero_zero_real @ ( plus_plus_real @ X @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_real ) ) ) ) ).

% arsinh_real_aux
thf(fact_1755_exp__bound,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ord_less_eq_real @ ( exp_real @ X ) @ ( plus_plus_real @ ( plus_plus_real @ one_one_real @ X ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% exp_bound
thf(fact_1756_real__sqrt__sum__squares__mult__ge__zero,axiom,
    ! [X: real,Y2: real,Xa2: real,Ya: real] : ( ord_less_eq_real @ zero_zero_real @ ( sqrt @ ( times_times_real @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( plus_plus_real @ ( power_power_real @ Xa2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Ya @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% real_sqrt_sum_squares_mult_ge_zero
thf(fact_1757_real__sqrt__power__even,axiom,
    ! [N: nat,X: real] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( ord_less_eq_real @ zero_zero_real @ X )
       => ( ( power_power_real @ ( sqrt @ X ) @ N )
          = ( power_power_real @ X @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% real_sqrt_power_even
thf(fact_1758_arith__geo__mean__sqrt,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ord_less_eq_real @ ( sqrt @ ( times_times_real @ X @ Y2 ) ) @ ( divide_divide_real @ ( plus_plus_real @ X @ Y2 ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% arith_geo_mean_sqrt
thf(fact_1759_tan__30,axiom,
    ( ( tan_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ ( bit1 @ one ) ) ) ) )
    = ( divide_divide_real @ one_one_real @ ( sqrt @ ( numeral_numeral_real @ ( bit1 @ one ) ) ) ) ) ).

% tan_30
thf(fact_1760_real__exp__bound__lemma,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_eq_real @ ( exp_real @ X ) @ ( plus_plus_real @ one_one_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ X ) ) ) ) ) ).

% real_exp_bound_lemma
thf(fact_1761_cos__x__y__le__one,axiom,
    ! [X: real,Y2: real] : ( ord_less_eq_real @ ( abs_abs_real @ ( divide_divide_real @ X @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) @ one_one_real ) ).

% cos_x_y_le_one
thf(fact_1762_real__sqrt__sum__squares__less,axiom,
    ! [X: real,U: real,Y2: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ ( divide_divide_real @ U @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) )
     => ( ( ord_less_real @ ( abs_abs_real @ Y2 ) @ ( divide_divide_real @ U @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) )
       => ( ord_less_real @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ U ) ) ) ).

% real_sqrt_sum_squares_less
thf(fact_1763_arcosh__real__def,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ one_one_real @ X )
     => ( ( arcosh_real @ X )
        = ( ln_ln_real @ ( plus_plus_real @ X @ ( sqrt @ ( minus_minus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_real ) ) ) ) ) ) ).

% arcosh_real_def
thf(fact_1764_exp__ge__one__plus__x__over__n__power__n,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( semiri5074537144036343181t_real @ N ) ) @ X )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_real @ ( power_power_real @ ( plus_plus_real @ one_one_real @ ( divide_divide_real @ X @ ( semiri5074537144036343181t_real @ N ) ) ) @ N ) @ ( exp_real @ X ) ) ) ) ).

% exp_ge_one_plus_x_over_n_power_n
thf(fact_1765_exp__ge__one__minus__x__over__n__power__n,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_eq_real @ X @ ( semiri5074537144036343181t_real @ N ) )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_real @ ( power_power_real @ ( minus_minus_real @ one_one_real @ ( divide_divide_real @ X @ ( semiri5074537144036343181t_real @ N ) ) ) @ N ) @ ( exp_real @ ( uminus_uminus_real @ X ) ) ) ) ) ).

% exp_ge_one_minus_x_over_n_power_n
thf(fact_1766_cos__arctan,axiom,
    ! [X: real] :
      ( ( cos_real @ ( arctan @ X ) )
      = ( divide_divide_real @ one_one_real @ ( sqrt @ ( plus_plus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% cos_arctan
thf(fact_1767_sin__arctan,axiom,
    ! [X: real] :
      ( ( sin_real @ ( arctan @ X ) )
      = ( divide_divide_real @ X @ ( sqrt @ ( plus_plus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% sin_arctan
thf(fact_1768_Maclaurin__exp__le,axiom,
    ! [X: real,N: nat] :
    ? [T3: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
      & ( ( exp_real @ X )
        = ( plus_plus_real
          @ ( groups6591440286371151544t_real
            @ ^ [M6: nat] : ( divide_divide_real @ ( power_power_real @ X @ M6 ) @ ( semiri2265585572941072030t_real @ M6 ) )
            @ ( set_ord_lessThan_nat @ N ) )
          @ ( times_times_real @ ( divide_divide_real @ ( exp_real @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ).

% Maclaurin_exp_le
thf(fact_1769_sqrt__sum__squares__half__less,axiom,
    ! [X: real,U: real,Y2: real] :
      ( ( ord_less_real @ X @ ( divide_divide_real @ U @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_real @ Y2 @ ( divide_divide_real @ U @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( ord_less_eq_real @ zero_zero_real @ X )
         => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
           => ( ord_less_real @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ U ) ) ) ) ) ).

% sqrt_sum_squares_half_less
thf(fact_1770_exp__lower__Taylor__quadratic,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( plus_plus_real @ ( plus_plus_real @ one_one_real @ X ) @ ( divide_divide_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( exp_real @ X ) ) ) ).

% exp_lower_Taylor_quadratic
thf(fact_1771_sin__cos__sqrt,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( sin_real @ X ) )
     => ( ( sin_real @ X )
        = ( sqrt @ ( minus_minus_real @ one_one_real @ ( power_power_real @ ( cos_real @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% sin_cos_sqrt
thf(fact_1772_arctan__half,axiom,
    ( arctan
    = ( ^ [X4: real] : ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( arctan @ ( divide_divide_real @ X4 @ ( plus_plus_real @ one_one_real @ ( sqrt @ ( plus_plus_real @ one_one_real @ ( power_power_real @ X4 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% arctan_half
thf(fact_1773_tanh__real__altdef,axiom,
    ( tanh_real
    = ( ^ [X4: real] : ( divide_divide_real @ ( minus_minus_real @ one_one_real @ ( exp_real @ ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ X4 ) ) ) @ ( plus_plus_real @ one_one_real @ ( exp_real @ ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ X4 ) ) ) ) ) ) ).

% tanh_real_altdef
thf(fact_1774_central__binomial__lower__bound,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_eq_real @ ( divide_divide_real @ ( power_power_real @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) @ N ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ N ) ) ) @ ( semiri5074537144036343181t_real @ ( binomial @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ N ) ) ) ) ).

% central_binomial_lower_bound
thf(fact_1775_arsinh__real__def,axiom,
    ( arsinh_real
    = ( ^ [X4: real] : ( ln_ln_real @ ( plus_plus_real @ X4 @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X4 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_real ) ) ) ) ) ) ).

% arsinh_real_def
thf(fact_1776_cos__arcsin,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ( cos_real @ ( arcsin @ X ) )
          = ( sqrt @ ( minus_minus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% cos_arcsin
thf(fact_1777_sin__arccos__abs,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
     => ( ( sin_real @ ( arccos @ Y2 ) )
        = ( sqrt @ ( minus_minus_real @ one_one_real @ ( power_power_real @ Y2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% sin_arccos_abs
thf(fact_1778_arccos__1,axiom,
    ( ( arccos @ one_one_real )
    = zero_zero_real ) ).

% arccos_1
thf(fact_1779_arccos__minus__1,axiom,
    ( ( arccos @ ( uminus_uminus_real @ one_one_real ) )
    = pi ) ).

% arccos_minus_1
thf(fact_1780_cos__arccos,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ( cos_real @ ( arccos @ Y2 ) )
          = Y2 ) ) ) ).

% cos_arccos
thf(fact_1781_sin__arcsin,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ( sin_real @ ( arcsin @ Y2 ) )
          = Y2 ) ) ) ).

% sin_arcsin
thf(fact_1782_arccos__0,axiom,
    ( ( arccos @ zero_zero_real )
    = ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% arccos_0
thf(fact_1783_arcsin__1,axiom,
    ( ( arcsin @ one_one_real )
    = ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% arcsin_1
thf(fact_1784_arcsin__minus__1,axiom,
    ( ( arcsin @ ( uminus_uminus_real @ one_one_real ) )
    = ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% arcsin_minus_1
thf(fact_1785_lessThan__Suc__atMost,axiom,
    ! [K: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ K ) )
      = ( set_ord_atMost_nat @ K ) ) ).

% lessThan_Suc_atMost
thf(fact_1786_arccos__le__arccos,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ Y2 )
       => ( ( ord_less_eq_real @ Y2 @ one_one_real )
         => ( ord_less_eq_real @ ( arccos @ Y2 ) @ ( arccos @ X ) ) ) ) ) ).

% arccos_le_arccos
thf(fact_1787_sum__choose__upper,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( binomial @ K3 @ M )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( suc @ N ) @ ( suc @ M ) ) ) ).

% sum_choose_upper
thf(fact_1788_arccos__le__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
       => ( ( ord_less_eq_real @ ( arccos @ X ) @ ( arccos @ Y2 ) )
          = ( ord_less_eq_real @ Y2 @ X ) ) ) ) ).

% arccos_le_mono
thf(fact_1789_arccos__eq__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
        & ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real ) )
     => ( ( ( arccos @ X )
          = ( arccos @ Y2 ) )
        = ( X = Y2 ) ) ) ).

% arccos_eq_iff
thf(fact_1790_arcsin__le__arcsin,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ Y2 )
       => ( ( ord_less_eq_real @ Y2 @ one_one_real )
         => ( ord_less_eq_real @ ( arcsin @ X ) @ ( arcsin @ Y2 ) ) ) ) ) ).

% arcsin_le_arcsin
thf(fact_1791_arcsin__minus,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ( arcsin @ ( uminus_uminus_real @ X ) )
          = ( uminus_uminus_real @ ( arcsin @ X ) ) ) ) ) ).

% arcsin_minus
thf(fact_1792_arcsin__le__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
       => ( ( ord_less_eq_real @ ( arcsin @ X ) @ ( arcsin @ Y2 ) )
          = ( ord_less_eq_real @ X @ Y2 ) ) ) ) ).

% arcsin_le_mono
thf(fact_1793_arcsin__eq__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
       => ( ( ( arcsin @ X )
            = ( arcsin @ Y2 ) )
          = ( X = Y2 ) ) ) ) ).

% arcsin_eq_iff
thf(fact_1794_sum__choose__lower,axiom,
    ! [R2: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( binomial @ ( plus_plus_nat @ R2 @ K3 ) @ K3 )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( suc @ ( plus_plus_nat @ R2 @ N ) ) @ N ) ) ).

% sum_choose_lower
thf(fact_1795_choose__rising__sum_I2_J,axiom,
    ! [N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [J3: nat] : ( binomial @ ( plus_plus_nat @ N @ J3 ) @ N )
        @ ( set_ord_atMost_nat @ M ) )
      = ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ N @ M ) @ one_one_nat ) @ M ) ) ).

% choose_rising_sum(2)
thf(fact_1796_choose__rising__sum_I1_J,axiom,
    ! [N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [J3: nat] : ( binomial @ ( plus_plus_nat @ N @ J3 ) @ N )
        @ ( set_ord_atMost_nat @ M ) )
      = ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ N @ M ) @ one_one_nat ) @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ).

% choose_rising_sum(1)
thf(fact_1797_arccos__lbound,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ord_less_eq_real @ zero_zero_real @ ( arccos @ Y2 ) ) ) ) ).

% arccos_lbound
thf(fact_1798_arccos__less__arccos,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ Y2 )
       => ( ( ord_less_eq_real @ Y2 @ one_one_real )
         => ( ord_less_real @ ( arccos @ Y2 ) @ ( arccos @ X ) ) ) ) ) ).

% arccos_less_arccos
thf(fact_1799_arccos__less__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
       => ( ( ord_less_real @ ( arccos @ X ) @ ( arccos @ Y2 ) )
          = ( ord_less_real @ Y2 @ X ) ) ) ) ).

% arccos_less_mono
thf(fact_1800_arccos__ubound,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ord_less_eq_real @ ( arccos @ Y2 ) @ pi ) ) ) ).

% arccos_ubound
thf(fact_1801_arccos__cos,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ pi )
       => ( ( arccos @ ( cos_real @ X ) )
          = X ) ) ) ).

% arccos_cos
thf(fact_1802_arcsin__less__arcsin,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ Y2 )
       => ( ( ord_less_eq_real @ Y2 @ one_one_real )
         => ( ord_less_real @ ( arcsin @ X ) @ ( arcsin @ Y2 ) ) ) ) ) ).

% arcsin_less_arcsin
thf(fact_1803_arcsin__less__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
       => ( ( ord_less_real @ ( arcsin @ X ) @ ( arcsin @ Y2 ) )
          = ( ord_less_real @ X @ Y2 ) ) ) ) ).

% arcsin_less_mono
thf(fact_1804_cos__arccos__abs,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ Y2 ) @ one_one_real )
     => ( ( cos_real @ ( arccos @ Y2 ) )
        = Y2 ) ) ).

% cos_arccos_abs
thf(fact_1805_arccos__cos__eq__abs,axiom,
    ! [Theta: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ Theta ) @ pi )
     => ( ( arccos @ ( cos_real @ Theta ) )
        = ( abs_abs_real @ Theta ) ) ) ).

% arccos_cos_eq_abs
thf(fact_1806_sum__choose__diagonal,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3542108847815614940at_nat
          @ ^ [K3: nat] : ( binomial @ ( minus_minus_nat @ N @ K3 ) @ ( minus_minus_nat @ M @ K3 ) )
          @ ( set_ord_atMost_nat @ M ) )
        = ( binomial @ ( suc @ N ) @ M ) ) ) ).

% sum_choose_diagonal
thf(fact_1807_vandermonde,axiom,
    ! [M: nat,N: nat,R2: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( times_times_nat @ ( binomial @ M @ K3 ) @ ( binomial @ N @ ( minus_minus_nat @ R2 @ K3 ) ) )
        @ ( set_ord_atMost_nat @ R2 ) )
      = ( binomial @ ( plus_plus_nat @ M @ N ) @ R2 ) ) ).

% vandermonde
thf(fact_1808_arccos__lt__bounded,axiom,
    ! [Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_real @ Y2 @ one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ ( arccos @ Y2 ) )
          & ( ord_less_real @ ( arccos @ Y2 ) @ pi ) ) ) ) ).

% arccos_lt_bounded
thf(fact_1809_arccos__bounded,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ( ord_less_eq_real @ zero_zero_real @ ( arccos @ Y2 ) )
          & ( ord_less_eq_real @ ( arccos @ Y2 ) @ pi ) ) ) ) ).

% arccos_bounded
thf(fact_1810_sin__arccos__nonzero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( ( sin_real @ ( arccos @ X ) )
         != zero_zero_real ) ) ) ).

% sin_arccos_nonzero
thf(fact_1811_arccos__cos2,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ X @ zero_zero_real )
     => ( ( ord_less_eq_real @ ( uminus_uminus_real @ pi ) @ X )
       => ( ( arccos @ ( cos_real @ X ) )
          = ( uminus_uminus_real @ X ) ) ) ) ).

% arccos_cos2
thf(fact_1812_arccos__minus,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ( arccos @ ( uminus_uminus_real @ X ) )
          = ( minus_minus_real @ pi @ ( arccos @ X ) ) ) ) ) ).

% arccos_minus
thf(fact_1813_cos__arcsin__nonzero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( ( cos_real @ ( arcsin @ X ) )
         != zero_zero_real ) ) ) ).

% cos_arcsin_nonzero
thf(fact_1814_choose__row__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat @ ( binomial @ N ) @ ( set_ord_atMost_nat @ N ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% choose_row_sum
thf(fact_1815_binomial,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( power_power_nat @ ( plus_plus_nat @ A @ B ) @ N )
      = ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( times_times_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( binomial @ N @ K3 ) ) @ ( power_power_nat @ A @ K3 ) ) @ ( power_power_nat @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% binomial
thf(fact_1816_arccos,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ( ord_less_eq_real @ zero_zero_real @ ( arccos @ Y2 ) )
          & ( ord_less_eq_real @ ( arccos @ Y2 ) @ pi )
          & ( ( cos_real @ ( arccos @ Y2 ) )
            = Y2 ) ) ) ) ).

% arccos
thf(fact_1817_arccos__minus__abs,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( ( arccos @ ( uminus_uminus_real @ X ) )
        = ( minus_minus_real @ pi @ ( arccos @ X ) ) ) ) ).

% arccos_minus_abs
thf(fact_1818_polynomial__product__nat,axiom,
    ! [M: nat,A: nat > nat,N: nat,B: nat > nat,X: nat] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ M @ I3 )
         => ( ( A @ I3 )
            = zero_zero_nat ) )
     => ( ! [J2: nat] :
            ( ( ord_less_nat @ N @ J2 )
           => ( ( B @ J2 )
              = zero_zero_nat ) )
       => ( ( times_times_nat
            @ ( groups3542108847815614940at_nat
              @ ^ [I4: nat] : ( times_times_nat @ ( A @ I4 ) @ ( power_power_nat @ X @ I4 ) )
              @ ( set_ord_atMost_nat @ M ) )
            @ ( groups3542108847815614940at_nat
              @ ^ [J3: nat] : ( times_times_nat @ ( B @ J3 ) @ ( power_power_nat @ X @ J3 ) )
              @ ( set_ord_atMost_nat @ N ) ) )
          = ( groups3542108847815614940at_nat
            @ ^ [R5: nat] :
                ( times_times_nat
                @ ( groups3542108847815614940at_nat
                  @ ^ [K3: nat] : ( times_times_nat @ ( A @ K3 ) @ ( B @ ( minus_minus_nat @ R5 @ K3 ) ) )
                  @ ( set_ord_atMost_nat @ R5 ) )
                @ ( power_power_nat @ X @ R5 ) )
            @ ( set_ord_atMost_nat @ ( plus_plus_nat @ M @ N ) ) ) ) ) ) ).

% polynomial_product_nat
thf(fact_1819_choose__square__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( power_power_nat @ ( binomial @ N @ K3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ N ) ) ).

% choose_square_sum
thf(fact_1820_arccos__le__pi2,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ord_less_eq_real @ ( arccos @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% arccos_le_pi2
thf(fact_1821_binomial__r__part__sum,axiom,
    ! [M: nat] :
      ( ( groups3542108847815614940at_nat @ ( binomial @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ one_one_nat ) ) @ ( set_ord_atMost_nat @ M ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) ) ).

% binomial_r_part_sum
thf(fact_1822_choose__linear__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I4: nat] : ( times_times_nat @ I4 @ ( binomial @ N @ I4 ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( times_times_nat @ N @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% choose_linear_sum
thf(fact_1823_arcsin__lt__bounded,axiom,
    ! [Y2: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_real @ Y2 @ one_one_real )
       => ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arcsin @ Y2 ) )
          & ( ord_less_real @ ( arcsin @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ).

% arcsin_lt_bounded
thf(fact_1824_arcsin__lbound,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arcsin @ Y2 ) ) ) ) ).

% arcsin_lbound
thf(fact_1825_arcsin__ubound,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ord_less_eq_real @ ( arcsin @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% arcsin_ubound
thf(fact_1826_arcsin__bounded,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arcsin @ Y2 ) )
          & ( ord_less_eq_real @ ( arcsin @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ).

% arcsin_bounded
thf(fact_1827_arcsin__sin,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X )
     => ( ( ord_less_eq_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ( arcsin @ ( sin_real @ X ) )
          = X ) ) ) ).

% arcsin_sin
thf(fact_1828_arcsin,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arcsin @ Y2 ) )
          & ( ord_less_eq_real @ ( arcsin @ Y2 ) @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
          & ( ( sin_real @ ( arcsin @ Y2 ) )
            = Y2 ) ) ) ) ).

% arcsin
thf(fact_1829_arcsin__pi,axiom,
    ! [Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ Y2 )
     => ( ( ord_less_eq_real @ Y2 @ one_one_real )
       => ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( arcsin @ Y2 ) )
          & ( ord_less_eq_real @ ( arcsin @ Y2 ) @ pi )
          & ( ( sin_real @ ( arcsin @ Y2 ) )
            = Y2 ) ) ) ) ).

% arcsin_pi
thf(fact_1830_arcsin__le__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ( ord_less_eq_real @ ( divide_divide_real @ ( uminus_uminus_real @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ord_less_eq_real @ ( arcsin @ X ) @ Y2 )
              = ( ord_less_eq_real @ X @ ( sin_real @ Y2 ) ) ) ) ) ) ) ).

% arcsin_le_iff
thf(fact_1831_le__arcsin__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ( ord_less_eq_real @ ( divide_divide_real @ ( uminus_uminus_real @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ Y2 )
         => ( ( ord_less_eq_real @ Y2 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
           => ( ( ord_less_eq_real @ Y2 @ ( arcsin @ X ) )
              = ( ord_less_eq_real @ ( sin_real @ Y2 ) @ X ) ) ) ) ) ) ).

% le_arcsin_iff
thf(fact_1832_arccos__cos__eq__abs__2pi,axiom,
    ! [Theta: real] :
      ~ ! [K2: int] :
          ( ( arccos @ ( cos_real @ Theta ) )
         != ( abs_abs_real @ ( minus_minus_real @ Theta @ ( times_times_real @ ( ring_1_of_int_real @ K2 ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) ) ) ) ).

% arccos_cos_eq_abs_2pi
thf(fact_1833_sin__arccos,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( ( sin_real @ ( arccos @ X ) )
          = ( sqrt @ ( minus_minus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% sin_arccos
thf(fact_1834_of__nat__id,axiom,
    ( semiri1316708129612266289at_nat
    = ( ^ [N2: nat] : N2 ) ) ).

% of_nat_id
thf(fact_1835_real__scaleR__def,axiom,
    real_V1485227260804924795R_real = times_times_real ).

% real_scaleR_def
thf(fact_1836_complex__scaleR,axiom,
    ! [R2: real,A: real,B: real] :
      ( ( real_V2046097035970521341omplex @ R2 @ ( complex2 @ A @ B ) )
      = ( complex2 @ ( times_times_real @ R2 @ A ) @ ( times_times_real @ R2 @ B ) ) ) ).

% complex_scaleR
thf(fact_1837_Maclaurin__sin__bound,axiom,
    ! [X: real,N: nat] :
      ( ord_less_eq_real
      @ ( abs_abs_real
        @ ( minus_minus_real @ ( sin_real @ X )
          @ ( groups6591440286371151544t_real
            @ ^ [M6: nat] : ( times_times_real @ ( sin_coeff @ M6 ) @ ( power_power_real @ X @ M6 ) )
            @ ( set_ord_lessThan_nat @ N ) ) ) )
      @ ( times_times_real @ ( inverse_inverse_real @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ ( abs_abs_real @ X ) @ N ) ) ) ).

% Maclaurin_sin_bound
thf(fact_1838_cot__less__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( divide_divide_real @ ( uminus_uminus_real @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ X )
     => ( ( ord_less_real @ X @ zero_zero_real )
       => ( ord_less_real @ ( cot_real @ X ) @ zero_zero_real ) ) ) ).

% cot_less_zero
thf(fact_1839_i__even__power,axiom,
    ! [N: nat] :
      ( ( power_power_complex @ imaginary_unit @ ( times_times_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( power_power_complex @ ( uminus1482373934393186551omplex @ one_one_complex ) @ N ) ) ).

% i_even_power
thf(fact_1840_log__base__10__eq1,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( log @ ( numeral_numeral_real @ ( bit0 @ ( bit1 @ ( bit0 @ one ) ) ) ) @ X )
        = ( times_times_real @ ( divide_divide_real @ ( ln_ln_real @ ( exp_real @ one_one_real ) ) @ ( ln_ln_real @ ( numeral_numeral_real @ ( bit0 @ ( bit1 @ ( bit0 @ one ) ) ) ) ) ) @ ( ln_ln_real @ X ) ) ) ) ).

% log_base_10_eq1
thf(fact_1841_log__one,axiom,
    ! [A: real] :
      ( ( log @ A @ one_one_real )
      = zero_zero_real ) ).

% log_one
thf(fact_1842_norm__ii,axiom,
    ( ( real_V1022390504157884413omplex @ imaginary_unit )
    = one_one_real ) ).

% norm_ii
thf(fact_1843_complex__i__mult__minus,axiom,
    ! [X: complex] :
      ( ( times_times_complex @ imaginary_unit @ ( times_times_complex @ imaginary_unit @ X ) )
      = ( uminus1482373934393186551omplex @ X ) ) ).

% complex_i_mult_minus
thf(fact_1844_divide__i,axiom,
    ! [X: complex] :
      ( ( divide1717551699836669952omplex @ X @ imaginary_unit )
      = ( times_times_complex @ ( uminus1482373934393186551omplex @ imaginary_unit ) @ X ) ) ).

% divide_i
thf(fact_1845_log__eq__one,axiom,
    ! [A: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( log @ A @ A )
          = one_one_real ) ) ) ).

% log_eq_one
thf(fact_1846_log__less__cancel__iff,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ zero_zero_real @ Y2 )
         => ( ( ord_less_real @ ( log @ A @ X ) @ ( log @ A @ Y2 ) )
            = ( ord_less_real @ X @ Y2 ) ) ) ) ) ).

% log_less_cancel_iff
thf(fact_1847_log__less__one__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ ( log @ A @ X ) @ one_one_real )
          = ( ord_less_real @ X @ A ) ) ) ) ).

% log_less_one_cancel_iff
thf(fact_1848_one__less__log__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ one_one_real @ ( log @ A @ X ) )
          = ( ord_less_real @ A @ X ) ) ) ) ).

% one_less_log_cancel_iff
thf(fact_1849_log__less__zero__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ ( log @ A @ X ) @ zero_zero_real )
          = ( ord_less_real @ X @ one_one_real ) ) ) ) ).

% log_less_zero_cancel_iff
thf(fact_1850_zero__less__log__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ zero_zero_real @ ( log @ A @ X ) )
          = ( ord_less_real @ one_one_real @ X ) ) ) ) ).

% zero_less_log_cancel_iff
thf(fact_1851_i__squared,axiom,
    ( ( times_times_complex @ imaginary_unit @ imaginary_unit )
    = ( uminus1482373934393186551omplex @ one_one_complex ) ) ).

% i_squared
thf(fact_1852_divide__numeral__i,axiom,
    ! [Z: complex,N: num] :
      ( ( divide1717551699836669952omplex @ Z @ ( times_times_complex @ ( numera6690914467698888265omplex @ N ) @ imaginary_unit ) )
      = ( divide1717551699836669952omplex @ ( uminus1482373934393186551omplex @ ( times_times_complex @ imaginary_unit @ Z ) ) @ ( numera6690914467698888265omplex @ N ) ) ) ).

% divide_numeral_i
thf(fact_1853_log__le__cancel__iff,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ zero_zero_real @ Y2 )
         => ( ( ord_less_eq_real @ ( log @ A @ X ) @ ( log @ A @ Y2 ) )
            = ( ord_less_eq_real @ X @ Y2 ) ) ) ) ) ).

% log_le_cancel_iff
thf(fact_1854_log__le__one__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ ( log @ A @ X ) @ one_one_real )
          = ( ord_less_eq_real @ X @ A ) ) ) ) ).

% log_le_one_cancel_iff
thf(fact_1855_one__le__log__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ one_one_real @ ( log @ A @ X ) )
          = ( ord_less_eq_real @ A @ X ) ) ) ) ).

% one_le_log_cancel_iff
thf(fact_1856_log__le__zero__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ ( log @ A @ X ) @ zero_zero_real )
          = ( ord_less_eq_real @ X @ one_one_real ) ) ) ) ).

% log_le_zero_cancel_iff
thf(fact_1857_zero__le__log__cancel__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ zero_zero_real @ ( log @ A @ X ) )
          = ( ord_less_eq_real @ one_one_real @ X ) ) ) ) ).

% zero_le_log_cancel_iff
thf(fact_1858_cot__npi,axiom,
    ! [N: nat] :
      ( ( cot_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ pi ) )
      = zero_zero_real ) ).

% cot_npi
thf(fact_1859_log__pow__cancel,axiom,
    ! [A: real,B: nat] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( log @ A @ ( power_power_real @ A @ B ) )
          = ( semiri5074537144036343181t_real @ B ) ) ) ) ).

% log_pow_cancel
thf(fact_1860_cot__periodic,axiom,
    ! [X: real] :
      ( ( cot_real @ ( plus_plus_real @ X @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) )
      = ( cot_real @ X ) ) ).

% cot_periodic
thf(fact_1861_power2__i,axiom,
    ( ( power_power_complex @ imaginary_unit @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = ( uminus1482373934393186551omplex @ one_one_complex ) ) ).

% power2_i
thf(fact_1862_real__sqrt__inverse,axiom,
    ! [X: real] :
      ( ( sqrt @ ( inverse_inverse_real @ X ) )
      = ( inverse_inverse_real @ ( sqrt @ X ) ) ) ).

% real_sqrt_inverse
thf(fact_1863_complex__i__not__one,axiom,
    imaginary_unit != one_one_complex ).

% complex_i_not_one
thf(fact_1864_complex__i__not__numeral,axiom,
    ! [W: num] :
      ( imaginary_unit
     != ( numera6690914467698888265omplex @ W ) ) ).

% complex_i_not_numeral
thf(fact_1865_log__inverse,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( log @ A @ ( inverse_inverse_real @ X ) )
            = ( uminus_uminus_real @ ( log @ A @ X ) ) ) ) ) ) ).

% log_inverse
thf(fact_1866_divide__real__def,axiom,
    ( divide_divide_real
    = ( ^ [X4: real,Y4: real] : ( times_times_real @ X4 @ ( inverse_inverse_real @ Y4 ) ) ) ) ).

% divide_real_def
thf(fact_1867_i__times__eq__iff,axiom,
    ! [W: complex,Z: complex] :
      ( ( ( times_times_complex @ imaginary_unit @ W )
        = Z )
      = ( W
        = ( uminus1482373934393186551omplex @ ( times_times_complex @ imaginary_unit @ Z ) ) ) ) ).

% i_times_eq_iff
thf(fact_1868_complex__i__not__neg__numeral,axiom,
    ! [W: num] :
      ( imaginary_unit
     != ( uminus1482373934393186551omplex @ ( numera6690914467698888265omplex @ W ) ) ) ).

% complex_i_not_neg_numeral
thf(fact_1869_log__ln,axiom,
    ( ln_ln_real
    = ( log @ ( exp_real @ one_one_real ) ) ) ).

% log_ln
thf(fact_1870_Complex__eq__i,axiom,
    ! [X: real,Y2: real] :
      ( ( ( complex2 @ X @ Y2 )
        = imaginary_unit )
      = ( ( X = zero_zero_real )
        & ( Y2 = one_one_real ) ) ) ).

% Complex_eq_i
thf(fact_1871_imaginary__unit_Ocode,axiom,
    ( imaginary_unit
    = ( complex2 @ zero_zero_real @ one_one_real ) ) ).

% imaginary_unit.code
thf(fact_1872_Complex__mult__i,axiom,
    ! [A: real,B: real] :
      ( ( times_times_complex @ ( complex2 @ A @ B ) @ imaginary_unit )
      = ( complex2 @ ( uminus_uminus_real @ B ) @ A ) ) ).

% Complex_mult_i
thf(fact_1873_i__mult__Complex,axiom,
    ! [A: real,B: real] :
      ( ( times_times_complex @ imaginary_unit @ ( complex2 @ A @ B ) )
      = ( complex2 @ ( uminus_uminus_real @ B ) @ A ) ) ).

% i_mult_Complex
thf(fact_1874_log__base__change,axiom,
    ! [A: real,B: real,X: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( log @ B @ X )
          = ( divide_divide_real @ ( log @ A @ X ) @ ( log @ A @ B ) ) ) ) ) ).

% log_base_change
thf(fact_1875_less__log__of__power,axiom,
    ! [B: real,N: nat,M: real] :
      ( ( ord_less_real @ ( power_power_real @ B @ N ) @ M )
     => ( ( ord_less_real @ one_one_real @ B )
       => ( ord_less_real @ ( semiri5074537144036343181t_real @ N ) @ ( log @ B @ M ) ) ) ) ).

% less_log_of_power
thf(fact_1876_log__of__power__eq,axiom,
    ! [M: nat,B: real,N: nat] :
      ( ( ( semiri5074537144036343181t_real @ M )
        = ( power_power_real @ B @ N ) )
     => ( ( ord_less_real @ one_one_real @ B )
       => ( ( semiri5074537144036343181t_real @ N )
          = ( log @ B @ ( semiri5074537144036343181t_real @ M ) ) ) ) ) ).

% log_of_power_eq
thf(fact_1877_forall__pos__mono__1,axiom,
    ! [P: real > $o,E: real] :
      ( ! [D3: real,E2: real] :
          ( ( ord_less_real @ D3 @ E2 )
         => ( ( P @ D3 )
           => ( P @ E2 ) ) )
     => ( ! [N4: nat] : ( P @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ ( suc @ N4 ) ) ) )
       => ( ( ord_less_real @ zero_zero_real @ E )
         => ( P @ E ) ) ) ) ).

% forall_pos_mono_1
thf(fact_1878_real__arch__inverse,axiom,
    ! [E: real] :
      ( ( ord_less_real @ zero_zero_real @ E )
      = ( ? [N2: nat] :
            ( ( N2 != zero_zero_nat )
            & ( ord_less_real @ zero_zero_real @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ N2 ) ) )
            & ( ord_less_real @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ N2 ) ) @ E ) ) ) ) ).

% real_arch_inverse
thf(fact_1879_forall__pos__mono,axiom,
    ! [P: real > $o,E: real] :
      ( ! [D3: real,E2: real] :
          ( ( ord_less_real @ D3 @ E2 )
         => ( ( P @ D3 )
           => ( P @ E2 ) ) )
     => ( ! [N4: nat] :
            ( ( N4 != zero_zero_nat )
           => ( P @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ N4 ) ) ) )
       => ( ( ord_less_real @ zero_zero_real @ E )
         => ( P @ E ) ) ) ) ).

% forall_pos_mono
thf(fact_1880_sqrt__divide__self__eq,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( divide_divide_real @ ( sqrt @ X ) @ X )
        = ( inverse_inverse_real @ ( sqrt @ X ) ) ) ) ).

% sqrt_divide_self_eq
thf(fact_1881_log__mult,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( ord_less_real @ zero_zero_real @ Y2 )
           => ( ( log @ A @ ( times_times_real @ X @ Y2 ) )
              = ( plus_plus_real @ ( log @ A @ X ) @ ( log @ A @ Y2 ) ) ) ) ) ) ) ).

% log_mult
thf(fact_1882_log__divide,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( ord_less_real @ zero_zero_real @ Y2 )
           => ( ( log @ A @ ( divide_divide_real @ X @ Y2 ) )
              = ( minus_minus_real @ ( log @ A @ X ) @ ( log @ A @ Y2 ) ) ) ) ) ) ) ).

% log_divide
thf(fact_1883_le__log__of__power,axiom,
    ! [B: real,N: nat,M: real] :
      ( ( ord_less_eq_real @ ( power_power_real @ B @ N ) @ M )
     => ( ( ord_less_real @ one_one_real @ B )
       => ( ord_less_eq_real @ ( semiri5074537144036343181t_real @ N ) @ ( log @ B @ M ) ) ) ) ).

% le_log_of_power
thf(fact_1884_log__base__pow,axiom,
    ! [A: real,N: nat,X: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( log @ ( power_power_real @ A @ N ) @ X )
        = ( divide_divide_real @ ( log @ A @ X ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) ).

% log_base_pow
thf(fact_1885_log__nat__power,axiom,
    ! [X: real,B: real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( log @ B @ ( power_power_real @ X @ N ) )
        = ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( log @ B @ X ) ) ) ) ).

% log_nat_power
thf(fact_1886_log2__of__power__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( M
        = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
     => ( ( semiri5074537144036343181t_real @ N )
        = ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ M ) ) ) ) ).

% log2_of_power_eq
thf(fact_1887_log__of__power__less,axiom,
    ! [M: nat,B: real,N: nat] :
      ( ( ord_less_real @ ( semiri5074537144036343181t_real @ M ) @ ( power_power_real @ B @ N ) )
     => ( ( ord_less_real @ one_one_real @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ M )
         => ( ord_less_real @ ( log @ B @ ( semiri5074537144036343181t_real @ M ) ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) ) ).

% log_of_power_less
thf(fact_1888_log__eq__div__ln__mult__log,axiom,
    ! [A: real,B: real,X: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ B )
         => ( ( B != one_one_real )
           => ( ( ord_less_real @ zero_zero_real @ X )
             => ( ( log @ A @ X )
                = ( times_times_real @ ( divide_divide_real @ ( ln_ln_real @ B ) @ ( ln_ln_real @ A ) ) @ ( log @ B @ X ) ) ) ) ) ) ) ) ).

% log_eq_div_ln_mult_log
thf(fact_1889_exp__plus__inverse__exp,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( plus_plus_real @ ( exp_real @ X ) @ ( inverse_inverse_real @ ( exp_real @ X ) ) ) ) ).

% exp_plus_inverse_exp
thf(fact_1890_log__of__power__le,axiom,
    ! [M: nat,B: real,N: nat] :
      ( ( ord_less_eq_real @ ( semiri5074537144036343181t_real @ M ) @ ( power_power_real @ B @ N ) )
     => ( ( ord_less_real @ one_one_real @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ M )
         => ( ord_less_eq_real @ ( log @ B @ ( semiri5074537144036343181t_real @ M ) ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) ) ).

% log_of_power_le
thf(fact_1891_plus__inverse__ge__2,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( plus_plus_real @ X @ ( inverse_inverse_real @ X ) ) ) ) ).

% plus_inverse_ge_2
thf(fact_1892_real__inv__sqrt__pow2,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( power_power_real @ ( inverse_inverse_real @ ( sqrt @ X ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( inverse_inverse_real @ X ) ) ) ).

% real_inv_sqrt_pow2
thf(fact_1893_tan__cot,axiom,
    ! [X: real] :
      ( ( tan_real @ ( minus_minus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ X ) )
      = ( inverse_inverse_real @ ( tan_real @ X ) ) ) ).

% tan_cot
thf(fact_1894_less__log2__of__power,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ M )
     => ( ord_less_real @ ( semiri5074537144036343181t_real @ N ) @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ M ) ) ) ) ).

% less_log2_of_power
thf(fact_1895_le__log2__of__power,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ M )
     => ( ord_less_eq_real @ ( semiri5074537144036343181t_real @ N ) @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ M ) ) ) ) ).

% le_log2_of_power
thf(fact_1896_real__le__x__sinh,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ X @ ( divide_divide_real @ ( minus_minus_real @ ( exp_real @ X ) @ ( inverse_inverse_real @ ( exp_real @ X ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% real_le_x_sinh
thf(fact_1897_real__le__abs__sinh,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( abs_abs_real @ X ) @ ( abs_abs_real @ ( divide_divide_real @ ( minus_minus_real @ ( exp_real @ X ) @ ( inverse_inverse_real @ ( exp_real @ X ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% real_le_abs_sinh
thf(fact_1898_log2__of__power__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_real @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ M ) ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) ).

% log2_of_power_less
thf(fact_1899_cot__gt__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
       => ( ord_less_real @ zero_zero_real @ ( cot_real @ X ) ) ) ) ).

% cot_gt_zero
thf(fact_1900_log2__of__power__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_eq_real @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ M ) ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) ).

% log2_of_power_le
thf(fact_1901_log__base__10__eq2,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( log @ ( numeral_numeral_real @ ( bit0 @ ( bit1 @ ( bit0 @ one ) ) ) ) @ X )
        = ( times_times_real @ ( log @ ( numeral_numeral_real @ ( bit0 @ ( bit1 @ ( bit0 @ one ) ) ) ) @ ( exp_real @ one_one_real ) ) @ ( ln_ln_real @ X ) ) ) ) ).

% log_base_10_eq2
thf(fact_1902_tan__cot_H,axiom,
    ! [X: real] :
      ( ( tan_real @ ( minus_minus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ X ) )
      = ( cot_real @ X ) ) ).

% tan_cot'
thf(fact_1903_Arg__minus__ii,axiom,
    ( ( arg @ ( uminus1482373934393186551omplex @ imaginary_unit ) )
    = ( divide_divide_real @ ( uminus_uminus_real @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% Arg_minus_ii
thf(fact_1904_ceiling__log__nat__eq__powr__iff,axiom,
    ! [B: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ( ( archim7802044766580827645g_real @ ( log @ ( semiri5074537144036343181t_real @ B ) @ ( semiri5074537144036343181t_real @ K ) ) )
            = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) )
          = ( ( ord_less_nat @ ( power_power_nat @ B @ N ) @ K )
            & ( ord_less_eq_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ) ) ) ) ).

% ceiling_log_nat_eq_powr_iff
thf(fact_1905_Arg__ii,axiom,
    ( ( arg @ imaginary_unit )
    = ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% Arg_ii
thf(fact_1906_sinh__real__le__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ ( sinh_real @ X ) @ ( sinh_real @ Y2 ) )
      = ( ord_less_eq_real @ X @ Y2 ) ) ).

% sinh_real_le_iff
thf(fact_1907_sinh__real__nonneg__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( sinh_real @ X ) )
      = ( ord_less_eq_real @ zero_zero_real @ X ) ) ).

% sinh_real_nonneg_iff
thf(fact_1908_sinh__real__nonpos__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( sinh_real @ X ) @ zero_zero_real )
      = ( ord_less_eq_real @ X @ zero_zero_real ) ) ).

% sinh_real_nonpos_iff
thf(fact_1909_ceiling__divide__eq__div__numeral,axiom,
    ! [A: num,B: num] :
      ( ( archim7802044766580827645g_real @ ( divide_divide_real @ ( numeral_numeral_real @ A ) @ ( numeral_numeral_real @ B ) ) )
      = ( uminus_uminus_int @ ( divide_divide_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ A ) ) @ ( numeral_numeral_int @ B ) ) ) ) ).

% ceiling_divide_eq_div_numeral
thf(fact_1910_ceiling__minus__divide__eq__div__numeral,axiom,
    ! [A: num,B: num] :
      ( ( archim7802044766580827645g_real @ ( uminus_uminus_real @ ( divide_divide_real @ ( numeral_numeral_real @ A ) @ ( numeral_numeral_real @ B ) ) ) )
      = ( uminus_uminus_int @ ( divide_divide_int @ ( numeral_numeral_int @ A ) @ ( numeral_numeral_int @ B ) ) ) ) ).

% ceiling_minus_divide_eq_div_numeral
thf(fact_1911_divide__complex__def,axiom,
    ( divide1717551699836669952omplex
    = ( ^ [X4: complex,Y4: complex] : ( times_times_complex @ X4 @ ( invers8013647133539491842omplex @ Y4 ) ) ) ) ).

% divide_complex_def
thf(fact_1912_Arg__bounded,axiom,
    ! [Z: complex] :
      ( ( ord_less_real @ ( uminus_uminus_real @ pi ) @ ( arg @ Z ) )
      & ( ord_less_eq_real @ ( arg @ Z ) @ pi ) ) ).

% Arg_bounded
thf(fact_1913_complex__inverse,axiom,
    ! [A: real,B: real] :
      ( ( invers8013647133539491842omplex @ ( complex2 @ A @ B ) )
      = ( complex2 @ ( divide_divide_real @ A @ ( plus_plus_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ B @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( divide_divide_real @ ( uminus_uminus_real @ B ) @ ( plus_plus_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ B @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% complex_inverse
thf(fact_1914_sinh__ln__real,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( sinh_real @ ( ln_ln_real @ X ) )
        = ( divide_divide_real @ ( minus_minus_real @ X @ ( inverse_inverse_real @ X ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% sinh_ln_real
thf(fact_1915_ceiling__log__nat__eq__if,axiom,
    ! [B: nat,N: nat,K: nat] :
      ( ( ord_less_nat @ ( power_power_nat @ B @ N ) @ K )
     => ( ( ord_less_eq_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N @ one_one_nat ) ) )
       => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
         => ( ( archim7802044766580827645g_real @ ( log @ ( semiri5074537144036343181t_real @ B ) @ ( semiri5074537144036343181t_real @ K ) ) )
            = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) ) ) ) ).

% ceiling_log_nat_eq_if
thf(fact_1916_ceiling__log2__div2,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( archim7802044766580827645g_real @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ N ) ) )
        = ( plus_plus_int @ ( archim7802044766580827645g_real @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ ( divide_divide_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) ) @ one_one_int ) ) ) ).

% ceiling_log2_div2
thf(fact_1917_cis__minus__pi__half,axiom,
    ( ( cis @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) )
    = ( uminus1482373934393186551omplex @ imaginary_unit ) ) ).

% cis_minus_pi_half
thf(fact_1918_ceiling__log__eq__powr__iff,axiom,
    ! [X: real,B: real,K: nat] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ one_one_real @ B )
       => ( ( ( archim7802044766580827645g_real @ ( log @ B @ X ) )
            = ( plus_plus_int @ ( semiri1314217659103216013at_int @ K ) @ one_one_int ) )
          = ( ( ord_less_real @ ( powr_real @ B @ ( semiri5074537144036343181t_real @ K ) ) @ X )
            & ( ord_less_eq_real @ X @ ( powr_real @ B @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ K @ one_one_nat ) ) ) ) ) ) ) ) ).

% ceiling_log_eq_powr_iff
thf(fact_1919_floor__log__nat__eq__powr__iff,axiom,
    ! [B: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ( ( archim6058952711729229775r_real @ ( log @ ( semiri5074537144036343181t_real @ B ) @ ( semiri5074537144036343181t_real @ K ) ) )
            = ( semiri1314217659103216013at_int @ N ) )
          = ( ( ord_less_eq_nat @ ( power_power_nat @ B @ N ) @ K )
            & ( ord_less_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ) ) ) ) ).

% floor_log_nat_eq_powr_iff
thf(fact_1920_powr__nonneg__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_eq_real @ ( powr_real @ A @ X ) @ zero_zero_real )
      = ( A = zero_zero_real ) ) ).

% powr_nonneg_iff
thf(fact_1921_powr__less__cancel__iff,axiom,
    ! [X: real,A: real,B: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( ( ord_less_real @ ( powr_real @ X @ A ) @ ( powr_real @ X @ B ) )
        = ( ord_less_real @ A @ B ) ) ) ).

% powr_less_cancel_iff
thf(fact_1922_norm__cis,axiom,
    ! [A: real] :
      ( ( real_V1022390504157884413omplex @ ( cis @ A ) )
      = one_one_real ) ).

% norm_cis
thf(fact_1923_cis__zero,axiom,
    ( ( cis @ zero_zero_real )
    = one_one_complex ) ).

% cis_zero
thf(fact_1924_powr__eq__one__iff,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ( powr_real @ A @ X )
          = one_one_real )
        = ( X = zero_zero_real ) ) ) ).

% powr_eq_one_iff
thf(fact_1925_powr__one,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( powr_real @ X @ one_one_real )
        = X ) ) ).

% powr_one
thf(fact_1926_powr__one__gt__zero__iff,axiom,
    ! [X: real] :
      ( ( ( powr_real @ X @ one_one_real )
        = X )
      = ( ord_less_eq_real @ zero_zero_real @ X ) ) ).

% powr_one_gt_zero_iff
thf(fact_1927_powr__le__cancel__iff,axiom,
    ! [X: real,A: real,B: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( ( ord_less_eq_real @ ( powr_real @ X @ A ) @ ( powr_real @ X @ B ) )
        = ( ord_less_eq_real @ A @ B ) ) ) ).

% powr_le_cancel_iff
thf(fact_1928_numeral__powr__numeral__real,axiom,
    ! [M: num,N: num] :
      ( ( powr_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) )
      = ( power_power_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_nat @ N ) ) ) ).

% numeral_powr_numeral_real
thf(fact_1929_cis__pi,axiom,
    ( ( cis @ pi )
    = ( uminus1482373934393186551omplex @ one_one_complex ) ) ).

% cis_pi
thf(fact_1930_log__powr__cancel,axiom,
    ! [A: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( log @ A @ ( powr_real @ A @ Y2 ) )
          = Y2 ) ) ) ).

% log_powr_cancel
thf(fact_1931_powr__log__cancel,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( powr_real @ A @ ( log @ A @ X ) )
            = X ) ) ) ) ).

% powr_log_cancel
thf(fact_1932_floor__divide__eq__div__numeral,axiom,
    ! [A: num,B: num] :
      ( ( archim6058952711729229775r_real @ ( divide_divide_real @ ( numeral_numeral_real @ A ) @ ( numeral_numeral_real @ B ) ) )
      = ( divide_divide_int @ ( numeral_numeral_int @ A ) @ ( numeral_numeral_int @ B ) ) ) ).

% floor_divide_eq_div_numeral
thf(fact_1933_powr__numeral,axiom,
    ! [X: real,N: num] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( powr_real @ X @ ( numeral_numeral_real @ N ) )
        = ( power_power_real @ X @ ( numeral_numeral_nat @ N ) ) ) ) ).

% powr_numeral
thf(fact_1934_cis__pi__half,axiom,
    ( ( cis @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
    = imaginary_unit ) ).

% cis_pi_half
thf(fact_1935_floor__one__divide__eq__div__numeral,axiom,
    ! [B: num] :
      ( ( archim6058952711729229775r_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ B ) ) )
      = ( divide_divide_int @ one_one_int @ ( numeral_numeral_int @ B ) ) ) ).

% floor_one_divide_eq_div_numeral
thf(fact_1936_cis__2pi,axiom,
    ( ( cis @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) )
    = one_one_complex ) ).

% cis_2pi
thf(fact_1937_floor__minus__divide__eq__div__numeral,axiom,
    ! [A: num,B: num] :
      ( ( archim6058952711729229775r_real @ ( uminus_uminus_real @ ( divide_divide_real @ ( numeral_numeral_real @ A ) @ ( numeral_numeral_real @ B ) ) ) )
      = ( divide_divide_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ A ) ) @ ( numeral_numeral_int @ B ) ) ) ).

% floor_minus_divide_eq_div_numeral
thf(fact_1938_square__powr__half,axiom,
    ! [X: real] :
      ( ( powr_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
      = ( abs_abs_real @ X ) ) ).

% square_powr_half
thf(fact_1939_floor__minus__one__divide__eq__div__numeral,axiom,
    ! [B: num] :
      ( ( archim6058952711729229775r_real @ ( uminus_uminus_real @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ B ) ) ) )
      = ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ B ) ) ) ).

% floor_minus_one_divide_eq_div_numeral
thf(fact_1940_sinh__le__cosh__real,axiom,
    ! [X: real] : ( ord_less_eq_real @ ( sinh_real @ X ) @ ( cosh_real @ X ) ) ).

% sinh_le_cosh_real
thf(fact_1941_powr__powr,axiom,
    ! [X: real,A: real,B: real] :
      ( ( powr_real @ ( powr_real @ X @ A ) @ B )
      = ( powr_real @ X @ ( times_times_real @ A @ B ) ) ) ).

% powr_powr
thf(fact_1942_powr__ge__pzero,axiom,
    ! [X: real,Y2: real] : ( ord_less_eq_real @ zero_zero_real @ ( powr_real @ X @ Y2 ) ) ).

% powr_ge_pzero
thf(fact_1943_powr__mono2,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ A )
     => ( ( ord_less_eq_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ X @ Y2 )
         => ( ord_less_eq_real @ ( powr_real @ X @ A ) @ ( powr_real @ Y2 @ A ) ) ) ) ) ).

% powr_mono2
thf(fact_1944_powr__less__cancel,axiom,
    ! [X: real,A: real,B: real] :
      ( ( ord_less_real @ ( powr_real @ X @ A ) @ ( powr_real @ X @ B ) )
     => ( ( ord_less_real @ one_one_real @ X )
       => ( ord_less_real @ A @ B ) ) ) ).

% powr_less_cancel
thf(fact_1945_powr__less__mono,axiom,
    ! [A: real,B: real,X: real] :
      ( ( ord_less_real @ A @ B )
     => ( ( ord_less_real @ one_one_real @ X )
       => ( ord_less_real @ ( powr_real @ X @ A ) @ ( powr_real @ X @ B ) ) ) ) ).

% powr_less_mono
thf(fact_1946_powr__mono,axiom,
    ! [A: real,B: real,X: real] :
      ( ( ord_less_eq_real @ A @ B )
     => ( ( ord_less_eq_real @ one_one_real @ X )
       => ( ord_less_eq_real @ ( powr_real @ X @ A ) @ ( powr_real @ X @ B ) ) ) ) ).

% powr_mono
thf(fact_1947_cosh__real__nonpos__le__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ X @ zero_zero_real )
     => ( ( ord_less_eq_real @ Y2 @ zero_zero_real )
       => ( ( ord_less_eq_real @ ( cosh_real @ X ) @ ( cosh_real @ Y2 ) )
          = ( ord_less_eq_real @ Y2 @ X ) ) ) ) ).

% cosh_real_nonpos_le_iff
thf(fact_1948_cosh__real__nonneg__le__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( ord_less_eq_real @ ( cosh_real @ X ) @ ( cosh_real @ Y2 ) )
          = ( ord_less_eq_real @ X @ Y2 ) ) ) ) ).

% cosh_real_nonneg_le_iff
thf(fact_1949_cosh__real__nonneg,axiom,
    ! [X: real] : ( ord_less_eq_real @ zero_zero_real @ ( cosh_real @ X ) ) ).

% cosh_real_nonneg
thf(fact_1950_cosh__real__ge__1,axiom,
    ! [X: real] : ( ord_less_eq_real @ one_one_real @ ( cosh_real @ X ) ) ).

% cosh_real_ge_1
thf(fact_1951_cis__mult,axiom,
    ! [A: real,B: real] :
      ( ( times_times_complex @ ( cis @ A ) @ ( cis @ B ) )
      = ( cis @ ( plus_plus_real @ A @ B ) ) ) ).

% cis_mult
thf(fact_1952_powr__less__mono2,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( ord_less_eq_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ X @ Y2 )
         => ( ord_less_real @ ( powr_real @ X @ A ) @ ( powr_real @ Y2 @ A ) ) ) ) ) ).

% powr_less_mono2
thf(fact_1953_powr__mono2_H,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_eq_real @ A @ zero_zero_real )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ X @ Y2 )
         => ( ord_less_eq_real @ ( powr_real @ Y2 @ A ) @ ( powr_real @ X @ A ) ) ) ) ) ).

% powr_mono2'
thf(fact_1954_powr__inj,axiom,
    ! [A: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( A != one_one_real )
       => ( ( ( powr_real @ A @ X )
            = ( powr_real @ A @ Y2 ) )
          = ( X = Y2 ) ) ) ) ).

% powr_inj
thf(fact_1955_gr__one__powr,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( ( ord_less_real @ zero_zero_real @ Y2 )
       => ( ord_less_real @ one_one_real @ ( powr_real @ X @ Y2 ) ) ) ) ).

% gr_one_powr
thf(fact_1956_powr__le1,axiom,
    ! [A: real,X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ A )
     => ( ( ord_less_eq_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ X @ one_one_real )
         => ( ord_less_eq_real @ ( powr_real @ X @ A ) @ one_one_real ) ) ) ) ).

% powr_le1
thf(fact_1957_powr__mono__both,axiom,
    ! [A: real,B: real,X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ A )
     => ( ( ord_less_eq_real @ A @ B )
       => ( ( ord_less_eq_real @ one_one_real @ X )
         => ( ( ord_less_eq_real @ X @ Y2 )
           => ( ord_less_eq_real @ ( powr_real @ X @ A ) @ ( powr_real @ Y2 @ B ) ) ) ) ) ) ).

% powr_mono_both
thf(fact_1958_ge__one__powr__ge__zero,axiom,
    ! [X: real,A: real] :
      ( ( ord_less_eq_real @ one_one_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ A )
       => ( ord_less_eq_real @ one_one_real @ ( powr_real @ X @ A ) ) ) ) ).

% ge_one_powr_ge_zero
thf(fact_1959_powr__divide,axiom,
    ! [X: real,Y2: real,A: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( powr_real @ ( divide_divide_real @ X @ Y2 ) @ A )
          = ( divide_divide_real @ ( powr_real @ X @ A ) @ ( powr_real @ Y2 @ A ) ) ) ) ) ).

% powr_divide
thf(fact_1960_powr__mult,axiom,
    ! [X: real,Y2: real,A: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( powr_real @ ( times_times_real @ X @ Y2 ) @ A )
          = ( times_times_real @ ( powr_real @ X @ A ) @ ( powr_real @ Y2 @ A ) ) ) ) ) ).

% powr_mult
thf(fact_1961_inverse__powr,axiom,
    ! [Y2: real,A: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
     => ( ( powr_real @ ( inverse_inverse_real @ Y2 ) @ A )
        = ( inverse_inverse_real @ ( powr_real @ Y2 @ A ) ) ) ) ).

% inverse_powr
thf(fact_1962_divide__powr__uminus,axiom,
    ! [A: real,B: real,C: real] :
      ( ( divide_divide_real @ A @ ( powr_real @ B @ C ) )
      = ( times_times_real @ A @ ( powr_real @ B @ ( uminus_uminus_real @ C ) ) ) ) ).

% divide_powr_uminus
thf(fact_1963_ln__powr,axiom,
    ! [X: real,Y2: real] :
      ( ( X != zero_zero_real )
     => ( ( ln_ln_real @ ( powr_real @ X @ Y2 ) )
        = ( times_times_real @ Y2 @ ( ln_ln_real @ X ) ) ) ) ).

% ln_powr
thf(fact_1964_log__powr,axiom,
    ! [X: real,B: real,Y2: real] :
      ( ( X != zero_zero_real )
     => ( ( log @ B @ ( powr_real @ X @ Y2 ) )
        = ( times_times_real @ Y2 @ ( log @ B @ X ) ) ) ) ).

% log_powr
thf(fact_1965_cosh__real__nonpos__less__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ X @ zero_zero_real )
     => ( ( ord_less_eq_real @ Y2 @ zero_zero_real )
       => ( ( ord_less_real @ ( cosh_real @ X ) @ ( cosh_real @ Y2 ) )
          = ( ord_less_real @ Y2 @ X ) ) ) ) ).

% cosh_real_nonpos_less_iff
thf(fact_1966_cosh__real__nonneg__less__iff,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( ord_less_real @ ( cosh_real @ X ) @ ( cosh_real @ Y2 ) )
          = ( ord_less_real @ X @ Y2 ) ) ) ) ).

% cosh_real_nonneg_less_iff
thf(fact_1967_cosh__real__strict__mono,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ Y2 )
       => ( ord_less_real @ ( cosh_real @ X ) @ ( cosh_real @ Y2 ) ) ) ) ).

% cosh_real_strict_mono
thf(fact_1968_arcosh__cosh__real,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( arcosh_real @ ( cosh_real @ X ) )
        = X ) ) ).

% arcosh_cosh_real
thf(fact_1969_floor__log__eq__powr__iff,axiom,
    ! [X: real,B: real,K: int] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ one_one_real @ B )
       => ( ( ( archim6058952711729229775r_real @ ( log @ B @ X ) )
            = K )
          = ( ( ord_less_eq_real @ ( powr_real @ B @ ( ring_1_of_int_real @ K ) ) @ X )
            & ( ord_less_real @ X @ ( powr_real @ B @ ( ring_1_of_int_real @ ( plus_plus_int @ K @ one_one_int ) ) ) ) ) ) ) ) ).

% floor_log_eq_powr_iff
thf(fact_1970_powr__realpow,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( powr_real @ X @ ( semiri5074537144036343181t_real @ N ) )
        = ( power_power_real @ X @ N ) ) ) ).

% powr_realpow
thf(fact_1971_less__log__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ Y2 @ ( log @ B @ X ) )
          = ( ord_less_real @ ( powr_real @ B @ Y2 ) @ X ) ) ) ) ).

% less_log_iff
thf(fact_1972_log__less__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ ( log @ B @ X ) @ Y2 )
          = ( ord_less_real @ X @ ( powr_real @ B @ Y2 ) ) ) ) ) ).

% log_less_iff
thf(fact_1973_less__powr__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ X @ ( powr_real @ B @ Y2 ) )
          = ( ord_less_real @ ( log @ B @ X ) @ Y2 ) ) ) ) ).

% less_powr_iff
thf(fact_1974_powr__less__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_real @ ( powr_real @ B @ Y2 ) @ X )
          = ( ord_less_real @ Y2 @ ( log @ B @ X ) ) ) ) ) ).

% powr_less_iff
thf(fact_1975_real__of__int__floor__add__one__gt,axiom,
    ! [R2: real] : ( ord_less_real @ R2 @ ( plus_plus_real @ ( ring_1_of_int_real @ ( archim6058952711729229775r_real @ R2 ) ) @ one_one_real ) ) ).

% real_of_int_floor_add_one_gt
thf(fact_1976_floor__eq,axiom,
    ! [N: int,X: real] :
      ( ( ord_less_real @ ( ring_1_of_int_real @ N ) @ X )
     => ( ( ord_less_real @ X @ ( plus_plus_real @ ( ring_1_of_int_real @ N ) @ one_one_real ) )
       => ( ( archim6058952711729229775r_real @ X )
          = N ) ) ) ).

% floor_eq
thf(fact_1977_real__of__int__floor__add__one__ge,axiom,
    ! [R2: real] : ( ord_less_eq_real @ R2 @ ( plus_plus_real @ ( ring_1_of_int_real @ ( archim6058952711729229775r_real @ R2 ) ) @ one_one_real ) ) ).

% real_of_int_floor_add_one_ge
thf(fact_1978_real__of__int__floor__gt__diff__one,axiom,
    ! [R2: real] : ( ord_less_real @ ( minus_minus_real @ R2 @ one_one_real ) @ ( ring_1_of_int_real @ ( archim6058952711729229775r_real @ R2 ) ) ) ).

% real_of_int_floor_gt_diff_one
thf(fact_1979_real__of__int__floor__ge__diff__one,axiom,
    ! [R2: real] : ( ord_less_eq_real @ ( minus_minus_real @ R2 @ one_one_real ) @ ( ring_1_of_int_real @ ( archim6058952711729229775r_real @ R2 ) ) ) ).

% real_of_int_floor_ge_diff_one
thf(fact_1980_DeMoivre,axiom,
    ! [A: real,N: nat] :
      ( ( power_power_complex @ ( cis @ A ) @ N )
      = ( cis @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ A ) ) ) ).

% DeMoivre
thf(fact_1981_powr__neg__one,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( powr_real @ X @ ( uminus_uminus_real @ one_one_real ) )
        = ( divide_divide_real @ one_one_real @ X ) ) ) ).

% powr_neg_one
thf(fact_1982_powr__mult__base,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( times_times_real @ X @ ( powr_real @ X @ Y2 ) )
        = ( powr_real @ X @ ( plus_plus_real @ one_one_real @ Y2 ) ) ) ) ).

% powr_mult_base
thf(fact_1983_powr__le__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ ( powr_real @ B @ Y2 ) @ X )
          = ( ord_less_eq_real @ Y2 @ ( log @ B @ X ) ) ) ) ) ).

% powr_le_iff
thf(fact_1984_le__powr__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ X @ ( powr_real @ B @ Y2 ) )
          = ( ord_less_eq_real @ ( log @ B @ X ) @ Y2 ) ) ) ) ).

% le_powr_iff
thf(fact_1985_log__le__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ ( log @ B @ X ) @ Y2 )
          = ( ord_less_eq_real @ X @ ( powr_real @ B @ Y2 ) ) ) ) ) ).

% log_le_iff
thf(fact_1986_le__log__iff,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( ord_less_eq_real @ Y2 @ ( log @ B @ X ) )
          = ( ord_less_eq_real @ ( powr_real @ B @ Y2 ) @ X ) ) ) ) ).

% le_log_iff
thf(fact_1987_floor__eq2,axiom,
    ! [N: int,X: real] :
      ( ( ord_less_eq_real @ ( ring_1_of_int_real @ N ) @ X )
     => ( ( ord_less_real @ X @ ( plus_plus_real @ ( ring_1_of_int_real @ N ) @ one_one_real ) )
       => ( ( archim6058952711729229775r_real @ X )
          = N ) ) ) ).

% floor_eq2
thf(fact_1988_floor__divide__real__eq__div,axiom,
    ! [B: int,A: real] :
      ( ( ord_less_eq_int @ zero_zero_int @ B )
     => ( ( archim6058952711729229775r_real @ ( divide_divide_real @ A @ ( ring_1_of_int_real @ B ) ) )
        = ( divide_divide_int @ ( archim6058952711729229775r_real @ A ) @ B ) ) ) ).

% floor_divide_real_eq_div
thf(fact_1989_ln__powr__bound,axiom,
    ! [X: real,A: real] :
      ( ( ord_less_eq_real @ one_one_real @ X )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ( ord_less_eq_real @ ( ln_ln_real @ X ) @ ( divide_divide_real @ ( powr_real @ X @ A ) @ A ) ) ) ) ).

% ln_powr_bound
thf(fact_1990_ln__powr__bound2,axiom,
    ! [X: real,A: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ( ord_less_eq_real @ ( powr_real @ ( ln_ln_real @ X ) @ A ) @ ( times_times_real @ ( powr_real @ A @ A ) @ X ) ) ) ) ).

% ln_powr_bound2
thf(fact_1991_add__log__eq__powr,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ B )
     => ( ( B != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( plus_plus_real @ Y2 @ ( log @ B @ X ) )
            = ( log @ B @ ( times_times_real @ ( powr_real @ B @ Y2 ) @ X ) ) ) ) ) ) ).

% add_log_eq_powr
thf(fact_1992_log__add__eq__powr,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ B )
     => ( ( B != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( plus_plus_real @ ( log @ B @ X ) @ Y2 )
            = ( log @ B @ ( times_times_real @ X @ ( powr_real @ B @ Y2 ) ) ) ) ) ) ) ).

% log_add_eq_powr
thf(fact_1993_minus__log__eq__powr,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ B )
     => ( ( B != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( minus_minus_real @ Y2 @ ( log @ B @ X ) )
            = ( log @ B @ ( divide_divide_real @ ( powr_real @ B @ Y2 ) @ X ) ) ) ) ) ) ).

% minus_log_eq_powr
thf(fact_1994_log__minus__eq__powr,axiom,
    ! [B: real,X: real,Y2: real] :
      ( ( ord_less_real @ zero_zero_real @ B )
     => ( ( B != one_one_real )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( minus_minus_real @ ( log @ B @ X ) @ Y2 )
            = ( log @ B @ ( times_times_real @ X @ ( powr_real @ B @ ( uminus_uminus_real @ Y2 ) ) ) ) ) ) ) ) ).

% log_minus_eq_powr
thf(fact_1995_powr__half__sqrt,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( powr_real @ X @ ( divide_divide_real @ one_one_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
        = ( sqrt @ X ) ) ) ).

% powr_half_sqrt
thf(fact_1996_powr__neg__numeral,axiom,
    ! [X: real,N: num] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( powr_real @ X @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
        = ( divide_divide_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ N ) ) ) ) ) ).

% powr_neg_numeral
thf(fact_1997_cosh__ln__real,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( cosh_real @ ( ln_ln_real @ X ) )
        = ( divide_divide_real @ ( plus_plus_real @ X @ ( inverse_inverse_real @ X ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% cosh_ln_real
thf(fact_1998_floor__log2__div2,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( archim6058952711729229775r_real @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ N ) ) )
        = ( plus_plus_int @ ( archim6058952711729229775r_real @ ( log @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( semiri5074537144036343181t_real @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ one_one_int ) ) ) ).

% floor_log2_div2
thf(fact_1999_floor__log__nat__eq__if,axiom,
    ! [B: nat,N: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ B @ N ) @ K )
     => ( ( ord_less_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N @ one_one_nat ) ) )
       => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
         => ( ( archim6058952711729229775r_real @ ( log @ ( semiri5074537144036343181t_real @ B ) @ ( semiri5074537144036343181t_real @ K ) ) )
            = ( semiri1314217659103216013at_int @ N ) ) ) ) ) ).

% floor_log_nat_eq_if
thf(fact_2000_bij__betw__roots__unity,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( bij_betw_nat_complex
        @ ^ [K3: nat] : ( cis @ ( divide_divide_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ ( semiri5074537144036343181t_real @ K3 ) ) @ ( semiri5074537144036343181t_real @ N ) ) )
        @ ( set_ord_lessThan_nat @ N )
        @ ( collect_complex
          @ ^ [Z5: complex] :
              ( ( power_power_complex @ Z5 @ N )
              = one_one_complex ) ) ) ) ).

% bij_betw_roots_unity
thf(fact_2001_exp__pi__i_H,axiom,
    ( ( exp_complex @ ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ pi ) ) )
    = ( uminus1482373934393186551omplex @ one_one_complex ) ) ).

% exp_pi_i'
thf(fact_2002_exp__pi__i,axiom,
    ( ( exp_complex @ ( times_times_complex @ ( real_V4546457046886955230omplex @ pi ) @ imaginary_unit ) )
    = ( uminus1482373934393186551omplex @ one_one_complex ) ) ).

% exp_pi_i
thf(fact_2003_exp__two__pi__i_H,axiom,
    ( ( exp_complex @ ( times_times_complex @ imaginary_unit @ ( times_times_complex @ ( real_V4546457046886955230omplex @ pi ) @ ( numera6690914467698888265omplex @ ( bit0 @ one ) ) ) ) )
    = one_one_complex ) ).

% exp_two_pi_i'
thf(fact_2004_exp__two__pi__i,axiom,
    ( ( exp_complex @ ( times_times_complex @ ( times_times_complex @ ( numera6690914467698888265omplex @ ( bit0 @ one ) ) @ ( real_V4546457046886955230omplex @ pi ) ) @ imaginary_unit ) )
    = one_one_complex ) ).

% exp_two_pi_i
thf(fact_2005_complex__exp__exists,axiom,
    ! [Z: complex] :
    ? [A5: complex,R3: real] :
      ( Z
      = ( times_times_complex @ ( real_V4546457046886955230omplex @ R3 ) @ ( exp_complex @ A5 ) ) ) ).

% complex_exp_exists
thf(fact_2006_complex__of__real__mult__Complex,axiom,
    ! [R2: real,X: real,Y2: real] :
      ( ( times_times_complex @ ( real_V4546457046886955230omplex @ R2 ) @ ( complex2 @ X @ Y2 ) )
      = ( complex2 @ ( times_times_real @ R2 @ X ) @ ( times_times_real @ R2 @ Y2 ) ) ) ).

% complex_of_real_mult_Complex
thf(fact_2007_Complex__mult__complex__of__real,axiom,
    ! [X: real,Y2: real,R2: real] :
      ( ( times_times_complex @ ( complex2 @ X @ Y2 ) @ ( real_V4546457046886955230omplex @ R2 ) )
      = ( complex2 @ ( times_times_real @ X @ R2 ) @ ( times_times_real @ Y2 @ R2 ) ) ) ).

% Complex_mult_complex_of_real
thf(fact_2008_Complex__add__complex__of__real,axiom,
    ! [X: real,Y2: real,R2: real] :
      ( ( plus_plus_complex @ ( complex2 @ X @ Y2 ) @ ( real_V4546457046886955230omplex @ R2 ) )
      = ( complex2 @ ( plus_plus_real @ X @ R2 ) @ Y2 ) ) ).

% Complex_add_complex_of_real
thf(fact_2009_complex__of__real__add__Complex,axiom,
    ! [R2: real,X: real,Y2: real] :
      ( ( plus_plus_complex @ ( real_V4546457046886955230omplex @ R2 ) @ ( complex2 @ X @ Y2 ) )
      = ( complex2 @ ( plus_plus_real @ R2 @ X ) @ Y2 ) ) ).

% complex_of_real_add_Complex
thf(fact_2010_cis__conv__exp,axiom,
    ( cis
    = ( ^ [B4: real] : ( exp_complex @ ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ B4 ) ) ) ) ) ).

% cis_conv_exp
thf(fact_2011_complex__of__real__i,axiom,
    ! [R2: real] :
      ( ( times_times_complex @ ( real_V4546457046886955230omplex @ R2 ) @ imaginary_unit )
      = ( complex2 @ zero_zero_real @ R2 ) ) ).

% complex_of_real_i
thf(fact_2012_i__complex__of__real,axiom,
    ! [R2: real] :
      ( ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ R2 ) )
      = ( complex2 @ zero_zero_real @ R2 ) ) ).

% i_complex_of_real
thf(fact_2013_Complex__eq,axiom,
    ( complex2
    = ( ^ [A4: real,B4: real] : ( plus_plus_complex @ ( real_V4546457046886955230omplex @ A4 ) @ ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ B4 ) ) ) ) ) ).

% Complex_eq
thf(fact_2014_complex__split__polar,axiom,
    ! [Z: complex] :
    ? [R3: real,A5: real] :
      ( Z
      = ( times_times_complex @ ( real_V4546457046886955230omplex @ R3 ) @ ( plus_plus_complex @ ( real_V4546457046886955230omplex @ ( cos_real @ A5 ) ) @ ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ ( sin_real @ A5 ) ) ) ) ) ) ).

% complex_split_polar
thf(fact_2015_cmod__unit__one,axiom,
    ! [A: real] :
      ( ( real_V1022390504157884413omplex @ ( plus_plus_complex @ ( real_V4546457046886955230omplex @ ( cos_real @ A ) ) @ ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ ( sin_real @ A ) ) ) ) )
      = one_one_real ) ).

% cmod_unit_one
thf(fact_2016_cmod__complex__polar,axiom,
    ! [R2: real,A: real] :
      ( ( real_V1022390504157884413omplex @ ( times_times_complex @ ( real_V4546457046886955230omplex @ R2 ) @ ( plus_plus_complex @ ( real_V4546457046886955230omplex @ ( cos_real @ A ) ) @ ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ ( sin_real @ A ) ) ) ) ) )
      = ( abs_abs_real @ R2 ) ) ).

% cmod_complex_polar
thf(fact_2017_csqrt__ii,axiom,
    ( ( csqrt @ imaginary_unit )
    = ( divide1717551699836669952omplex @ ( plus_plus_complex @ one_one_complex @ imaginary_unit ) @ ( real_V4546457046886955230omplex @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% csqrt_ii
thf(fact_2018_arctan__def,axiom,
    ( arctan
    = ( ^ [Y4: real] :
          ( the_real
          @ ^ [X4: real] :
              ( ( ord_less_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X4 )
              & ( ord_less_real @ X4 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
              & ( ( tan_real @ X4 )
                = Y4 ) ) ) ) ) ).

% arctan_def
thf(fact_2019_arcsin__def,axiom,
    ( arcsin
    = ( ^ [Y4: real] :
          ( the_real
          @ ^ [X4: real] :
              ( ( ord_less_eq_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ X4 )
              & ( ord_less_eq_real @ X4 @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
              & ( ( sin_real @ X4 )
                = Y4 ) ) ) ) ) ).

% arcsin_def
thf(fact_2020_modulo__int__unfold,axiom,
    ! [L2: int,K: int,N: nat,M: nat] :
      ( ( ( ( ( sgn_sgn_int @ L2 )
            = zero_zero_int )
          | ( ( sgn_sgn_int @ K )
            = zero_zero_int )
          | ( N = zero_zero_nat ) )
       => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ N ) ) )
          = ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) ) )
      & ( ~ ( ( ( sgn_sgn_int @ L2 )
              = zero_zero_int )
            | ( ( sgn_sgn_int @ K )
              = zero_zero_int )
            | ( N = zero_zero_nat ) )
       => ( ( ( ( sgn_sgn_int @ K )
              = ( sgn_sgn_int @ L2 ) )
           => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ M @ N ) ) ) ) )
          & ( ( ( sgn_sgn_int @ K )
             != ( sgn_sgn_int @ L2 ) )
           => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( times_times_int @ ( sgn_sgn_int @ L2 )
                @ ( minus_minus_int
                  @ ( semiri1314217659103216013at_int
                    @ ( times_times_nat @ N
                      @ ( zero_n2687167440665602831ol_nat
                        @ ~ ( dvd_dvd_nat @ N @ M ) ) ) )
                  @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ M @ N ) ) ) ) ) ) ) ) ) ).

% modulo_int_unfold
thf(fact_2021_csqrt__1,axiom,
    ( ( csqrt @ one_one_complex )
    = one_one_complex ) ).

% csqrt_1
thf(fact_2022_csqrt__eq__1,axiom,
    ! [Z: complex] :
      ( ( ( csqrt @ Z )
        = one_one_complex )
      = ( Z = one_one_complex ) ) ).

% csqrt_eq_1
thf(fact_2023_sgn__mult__dvd__iff,axiom,
    ! [R2: int,L2: int,K: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ ( sgn_sgn_int @ R2 ) @ L2 ) @ K )
      = ( ( dvd_dvd_int @ L2 @ K )
        & ( ( R2 = zero_zero_int )
         => ( K = zero_zero_int ) ) ) ) ).

% sgn_mult_dvd_iff
thf(fact_2024_mult__sgn__dvd__iff,axiom,
    ! [L2: int,R2: int,K: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ L2 @ ( sgn_sgn_int @ R2 ) ) @ K )
      = ( ( dvd_dvd_int @ L2 @ K )
        & ( ( R2 = zero_zero_int )
         => ( K = zero_zero_int ) ) ) ) ).

% mult_sgn_dvd_iff
thf(fact_2025_dvd__sgn__mult__iff,axiom,
    ! [L2: int,R2: int,K: int] :
      ( ( dvd_dvd_int @ L2 @ ( times_times_int @ ( sgn_sgn_int @ R2 ) @ K ) )
      = ( ( dvd_dvd_int @ L2 @ K )
        | ( R2 = zero_zero_int ) ) ) ).

% dvd_sgn_mult_iff
thf(fact_2026_dvd__mult__sgn__iff,axiom,
    ! [L2: int,K: int,R2: int] :
      ( ( dvd_dvd_int @ L2 @ ( times_times_int @ K @ ( sgn_sgn_int @ R2 ) ) )
      = ( ( dvd_dvd_int @ L2 @ K )
        | ( R2 = zero_zero_int ) ) ) ).

% dvd_mult_sgn_iff
thf(fact_2027_power2__csqrt,axiom,
    ! [Z: complex] :
      ( ( power_power_complex @ ( csqrt @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = Z ) ).

% power2_csqrt
thf(fact_2028_int__sgnE,axiom,
    ! [K: int] :
      ~ ! [N4: nat,L3: int] :
          ( K
         != ( times_times_int @ ( sgn_sgn_int @ L3 ) @ ( semiri1314217659103216013at_int @ N4 ) ) ) ).

% int_sgnE
thf(fact_2029_sgn__mod,axiom,
    ! [L2: int,K: int] :
      ( ( L2 != zero_zero_int )
     => ( ~ ( dvd_dvd_int @ L2 @ K )
       => ( ( sgn_sgn_int @ ( modulo_modulo_int @ K @ L2 ) )
          = ( sgn_sgn_int @ L2 ) ) ) ) ).

% sgn_mod
thf(fact_2030_ln__neg__is__const,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ X @ zero_zero_real )
     => ( ( ln_ln_real @ X )
        = ( the_real
          @ ^ [X4: real] : $false ) ) ) ).

% ln_neg_is_const
thf(fact_2031_zsgn__def,axiom,
    ( sgn_sgn_int
    = ( ^ [I4: int] : ( if_int @ ( I4 = zero_zero_int ) @ zero_zero_int @ ( if_int @ ( ord_less_int @ zero_zero_int @ I4 ) @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% zsgn_def
thf(fact_2032_div__sgn__abs__cancel,axiom,
    ! [V: int,K: int,L2: int] :
      ( ( V != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ V ) @ ( abs_abs_int @ K ) ) @ ( times_times_int @ ( sgn_sgn_int @ V ) @ ( abs_abs_int @ L2 ) ) )
        = ( divide_divide_int @ ( abs_abs_int @ K ) @ ( abs_abs_int @ L2 ) ) ) ) ).

% div_sgn_abs_cancel
thf(fact_2033_div__dvd__sgn__abs,axiom,
    ! [L2: int,K: int] :
      ( ( dvd_dvd_int @ L2 @ K )
     => ( ( divide_divide_int @ K @ L2 )
        = ( times_times_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( sgn_sgn_int @ L2 ) ) @ ( divide_divide_int @ ( abs_abs_int @ K ) @ ( abs_abs_int @ L2 ) ) ) ) ) ).

% div_dvd_sgn_abs
thf(fact_2034_of__real__sqrt,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( real_V4546457046886955230omplex @ ( sqrt @ X ) )
        = ( csqrt @ ( real_V4546457046886955230omplex @ X ) ) ) ) ).

% of_real_sqrt
thf(fact_2035_arccos__def,axiom,
    ( arccos
    = ( ^ [Y4: real] :
          ( the_real
          @ ^ [X4: real] :
              ( ( ord_less_eq_real @ zero_zero_real @ X4 )
              & ( ord_less_eq_real @ X4 @ pi )
              & ( ( cos_real @ X4 )
                = Y4 ) ) ) ) ) ).

% arccos_def
thf(fact_2036_eucl__rel__int__remainderI,axiom,
    ! [R2: int,L2: int,K: int,Q2: int] :
      ( ( ( sgn_sgn_int @ R2 )
        = ( sgn_sgn_int @ L2 ) )
     => ( ( ord_less_int @ ( abs_abs_int @ R2 ) @ ( abs_abs_int @ L2 ) )
       => ( ( K
            = ( plus_plus_int @ ( times_times_int @ Q2 @ L2 ) @ R2 ) )
         => ( eucl_rel_int @ K @ L2 @ ( product_Pair_int_int @ Q2 @ R2 ) ) ) ) ) ).

% eucl_rel_int_remainderI
thf(fact_2037_eucl__rel__int_Ocases,axiom,
    ! [A1: int,A22: int,A32: product_prod_int_int] :
      ( ( eucl_rel_int @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_int )
         => ( A32
           != ( product_Pair_int_int @ zero_zero_int @ A1 ) ) )
       => ( ! [Q3: int] :
              ( ( A32
                = ( product_Pair_int_int @ Q3 @ zero_zero_int ) )
             => ( ( A22 != zero_zero_int )
               => ( A1
                 != ( times_times_int @ Q3 @ A22 ) ) ) )
         => ~ ! [R3: int,Q3: int] :
                ( ( A32
                  = ( product_Pair_int_int @ Q3 @ R3 ) )
               => ( ( ( sgn_sgn_int @ R3 )
                    = ( sgn_sgn_int @ A22 ) )
                 => ( ( ord_less_int @ ( abs_abs_int @ R3 ) @ ( abs_abs_int @ A22 ) )
                   => ( A1
                     != ( plus_plus_int @ ( times_times_int @ Q3 @ A22 ) @ R3 ) ) ) ) ) ) ) ) ).

% eucl_rel_int.cases
thf(fact_2038_eucl__rel__int_Osimps,axiom,
    ( eucl_rel_int
    = ( ^ [A12: int,A23: int,A33: product_prod_int_int] :
          ( ? [K3: int] :
              ( ( A12 = K3 )
              & ( A23 = zero_zero_int )
              & ( A33
                = ( product_Pair_int_int @ zero_zero_int @ K3 ) ) )
          | ? [L: int,K3: int,Q4: int] :
              ( ( A12 = K3 )
              & ( A23 = L )
              & ( A33
                = ( product_Pair_int_int @ Q4 @ zero_zero_int ) )
              & ( L != zero_zero_int )
              & ( K3
                = ( times_times_int @ Q4 @ L ) ) )
          | ? [R5: int,L: int,K3: int,Q4: int] :
              ( ( A12 = K3 )
              & ( A23 = L )
              & ( A33
                = ( product_Pair_int_int @ Q4 @ R5 ) )
              & ( ( sgn_sgn_int @ R5 )
                = ( sgn_sgn_int @ L ) )
              & ( ord_less_int @ ( abs_abs_int @ R5 ) @ ( abs_abs_int @ L ) )
              & ( K3
                = ( plus_plus_int @ ( times_times_int @ Q4 @ L ) @ R5 ) ) ) ) ) ) ).

% eucl_rel_int.simps
thf(fact_2039_pi__half,axiom,
    ( ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
    = ( the_real
      @ ^ [X4: real] :
          ( ( ord_less_eq_real @ zero_zero_real @ X4 )
          & ( ord_less_eq_real @ X4 @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
          & ( ( cos_real @ X4 )
            = zero_zero_real ) ) ) ) ).

% pi_half
thf(fact_2040_pi__def,axiom,
    ( pi
    = ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) )
      @ ( the_real
        @ ^ [X4: real] :
            ( ( ord_less_eq_real @ zero_zero_real @ X4 )
            & ( ord_less_eq_real @ X4 @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
            & ( ( cos_real @ X4 )
              = zero_zero_real ) ) ) ) ) ).

% pi_def
thf(fact_2041_divide__int__unfold,axiom,
    ! [L2: int,K: int,N: nat,M: nat] :
      ( ( ( ( ( sgn_sgn_int @ L2 )
            = zero_zero_int )
          | ( ( sgn_sgn_int @ K )
            = zero_zero_int )
          | ( N = zero_zero_nat ) )
       => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ N ) ) )
          = zero_zero_int ) )
      & ( ~ ( ( ( sgn_sgn_int @ L2 )
              = zero_zero_int )
            | ( ( sgn_sgn_int @ K )
              = zero_zero_int )
            | ( N = zero_zero_nat ) )
       => ( ( ( ( sgn_sgn_int @ K )
              = ( sgn_sgn_int @ L2 ) )
           => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( semiri1314217659103216013at_int @ ( divide_divide_nat @ M @ N ) ) ) )
          & ( ( ( sgn_sgn_int @ K )
             != ( sgn_sgn_int @ L2 ) )
           => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( uminus_uminus_int
                @ ( semiri1314217659103216013at_int
                  @ ( plus_plus_nat @ ( divide_divide_nat @ M @ N )
                    @ ( zero_n2687167440665602831ol_nat
                      @ ~ ( dvd_dvd_nat @ N @ M ) ) ) ) ) ) ) ) ) ) ).

% divide_int_unfold
thf(fact_2042_modulo__int__def,axiom,
    ( modulo_modulo_int
    = ( ^ [K3: int,L: int] :
          ( if_int @ ( L = zero_zero_int ) @ K3
          @ ( if_int
            @ ( ( sgn_sgn_int @ K3 )
              = ( sgn_sgn_int @ L ) )
            @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ ( nat2 @ ( abs_abs_int @ K3 ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) ) ) )
            @ ( times_times_int @ ( sgn_sgn_int @ L )
              @ ( minus_minus_int
                @ ( times_times_int @ ( abs_abs_int @ L )
                  @ ( zero_n2684676970156552555ol_int
                    @ ~ ( dvd_dvd_int @ L @ K3 ) ) )
                @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ ( nat2 @ ( abs_abs_int @ K3 ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) ) ) ) ) ) ) ) ) ).

% modulo_int_def
thf(fact_2043_divide__int__def,axiom,
    ( divide_divide_int
    = ( ^ [K3: int,L: int] :
          ( if_int @ ( L = zero_zero_int ) @ zero_zero_int
          @ ( if_int
            @ ( ( sgn_sgn_int @ K3 )
              = ( sgn_sgn_int @ L ) )
            @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K3 ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) ) )
            @ ( uminus_uminus_int
              @ ( semiri1314217659103216013at_int
                @ ( plus_plus_nat @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K3 ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) )
                  @ ( zero_n2687167440665602831ol_nat
                    @ ~ ( dvd_dvd_int @ L @ K3 ) ) ) ) ) ) ) ) ) ).

% divide_int_def
thf(fact_2044_num_Osize__gen_I3_J,axiom,
    ! [X32: num] :
      ( ( size_num @ ( bit1 @ X32 ) )
      = ( plus_plus_nat @ ( size_num @ X32 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size_gen(3)
thf(fact_2045_powr__int,axiom,
    ! [X: real,I2: int] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ I2 )
         => ( ( powr_real @ X @ ( ring_1_of_int_real @ I2 ) )
            = ( power_power_real @ X @ ( nat2 @ I2 ) ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ I2 )
         => ( ( powr_real @ X @ ( ring_1_of_int_real @ I2 ) )
            = ( divide_divide_real @ one_one_real @ ( power_power_real @ X @ ( nat2 @ ( uminus_uminus_int @ I2 ) ) ) ) ) ) ) ) ).

% powr_int
thf(fact_2046_sgn__le__0__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( sgn_sgn_real @ X ) @ zero_zero_real )
      = ( ord_less_eq_real @ X @ zero_zero_real ) ) ).

% sgn_le_0_iff
thf(fact_2047_zero__le__sgn__iff,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( sgn_sgn_real @ X ) )
      = ( ord_less_eq_real @ zero_zero_real @ X ) ) ).

% zero_le_sgn_iff
thf(fact_2048_nat__numeral,axiom,
    ! [K: num] :
      ( ( nat2 @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_nat @ K ) ) ).

% nat_numeral
thf(fact_2049_nat__1,axiom,
    ( ( nat2 @ one_one_int )
    = ( suc @ zero_zero_nat ) ) ).

% nat_1
thf(fact_2050_nat__le__0,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ Z @ zero_zero_int )
     => ( ( nat2 @ Z )
        = zero_zero_nat ) ) ).

% nat_le_0
thf(fact_2051_nat__0__iff,axiom,
    ! [I2: int] :
      ( ( ( nat2 @ I2 )
        = zero_zero_nat )
      = ( ord_less_eq_int @ I2 @ zero_zero_int ) ) ).

% nat_0_iff
thf(fact_2052_zless__nat__conj,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
      = ( ( ord_less_int @ zero_zero_int @ Z )
        & ( ord_less_int @ W @ Z ) ) ) ).

% zless_nat_conj
thf(fact_2053_nat__neg__numeral,axiom,
    ! [K: num] :
      ( ( nat2 @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = zero_zero_nat ) ).

% nat_neg_numeral
thf(fact_2054_int__nat__eq,axiom,
    ! [Z: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ Z )
       => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z ) )
          = Z ) )
      & ( ~ ( ord_less_eq_int @ zero_zero_int @ Z )
       => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z ) )
          = zero_zero_int ) ) ) ).

% int_nat_eq
thf(fact_2055_zero__less__nat__eq,axiom,
    ! [Z: int] :
      ( ( ord_less_nat @ zero_zero_nat @ ( nat2 @ Z ) )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% zero_less_nat_eq
thf(fact_2056_diff__nat__numeral,axiom,
    ! [V: num,V3: num] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ ( numeral_numeral_nat @ V3 ) )
      = ( nat2 @ ( minus_minus_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ V3 ) ) ) ) ).

% diff_nat_numeral
thf(fact_2057_numeral__power__eq__nat__cancel__iff,axiom,
    ! [X: num,N: nat,Y2: int] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N )
        = ( nat2 @ Y2 ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X ) @ N )
        = Y2 ) ) ).

% numeral_power_eq_nat_cancel_iff
thf(fact_2058_nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y2: int,X: num,N: nat] :
      ( ( ( nat2 @ Y2 )
        = ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) )
      = ( Y2
        = ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% nat_eq_numeral_power_cancel_iff
thf(fact_2059_nat__ceiling__le__eq,axiom,
    ! [X: real,A: nat] :
      ( ( ord_less_eq_nat @ ( nat2 @ ( archim7802044766580827645g_real @ X ) ) @ A )
      = ( ord_less_eq_real @ X @ ( semiri5074537144036343181t_real @ A ) ) ) ).

% nat_ceiling_le_eq
thf(fact_2060_one__less__nat__eq,axiom,
    ! [Z: int] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ ( nat2 @ Z ) )
      = ( ord_less_int @ one_one_int @ Z ) ) ).

% one_less_nat_eq
thf(fact_2061_nat__numeral__diff__1,axiom,
    ! [V: num] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat )
      = ( nat2 @ ( minus_minus_int @ ( numeral_numeral_int @ V ) @ one_one_int ) ) ) ).

% nat_numeral_diff_1
thf(fact_2062_numeral__power__less__nat__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) @ ( nat2 @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_less_nat_cancel_iff
thf(fact_2063_nat__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_nat @ ( nat2 @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% nat_less_numeral_power_cancel_iff
thf(fact_2064_numeral__power__le__nat__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) @ ( nat2 @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_le_nat_cancel_iff
thf(fact_2065_nat__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_eq_nat @ ( nat2 @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% nat_le_numeral_power_cancel_iff
thf(fact_2066_nat__numeral__as__int,axiom,
    ( numeral_numeral_nat
    = ( ^ [I4: num] : ( nat2 @ ( numeral_numeral_int @ I4 ) ) ) ) ).

% nat_numeral_as_int
thf(fact_2067_nat__mono,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ X @ Y2 )
     => ( ord_less_eq_nat @ ( nat2 @ X ) @ ( nat2 @ Y2 ) ) ) ).

% nat_mono
thf(fact_2068_eq__nat__nat__iff,axiom,
    ! [Z: int,Z6: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( ord_less_eq_int @ zero_zero_int @ Z6 )
       => ( ( ( nat2 @ Z )
            = ( nat2 @ Z6 ) )
          = ( Z = Z6 ) ) ) ) ).

% eq_nat_nat_iff
thf(fact_2069_all__nat,axiom,
    ( ( ^ [P4: nat > $o] :
        ! [X7: nat] : ( P4 @ X7 ) )
    = ( ^ [P5: nat > $o] :
        ! [X4: int] :
          ( ( ord_less_eq_int @ zero_zero_int @ X4 )
         => ( P5 @ ( nat2 @ X4 ) ) ) ) ) ).

% all_nat
thf(fact_2070_ex__nat,axiom,
    ( ( ^ [P4: nat > $o] :
        ? [X7: nat] : ( P4 @ X7 ) )
    = ( ^ [P5: nat > $o] :
        ? [X4: int] :
          ( ( ord_less_eq_int @ zero_zero_int @ X4 )
          & ( P5 @ ( nat2 @ X4 ) ) ) ) ) ).

% ex_nat
thf(fact_2071_nat__one__as__int,axiom,
    ( one_one_nat
    = ( nat2 @ one_one_int ) ) ).

% nat_one_as_int
thf(fact_2072_unset__bit__nat__def,axiom,
    ( bit_se4205575877204974255it_nat
    = ( ^ [M6: nat,N2: nat] : ( nat2 @ ( bit_se4203085406695923979it_int @ M6 @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ) ).

% unset_bit_nat_def
thf(fact_2073_nat__mask__eq,axiom,
    ! [N: nat] :
      ( ( nat2 @ ( bit_se2000444600071755411sk_int @ N ) )
      = ( bit_se2002935070580805687sk_nat @ N ) ) ).

% nat_mask_eq
thf(fact_2074_nat__mono__iff,axiom,
    ! [Z: int,W: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
        = ( ord_less_int @ W @ Z ) ) ) ).

% nat_mono_iff
thf(fact_2075_zless__nat__eq__int__zless,axiom,
    ! [M: nat,Z: int] :
      ( ( ord_less_nat @ M @ ( nat2 @ Z ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ Z ) ) ).

% zless_nat_eq_int_zless
thf(fact_2076_nat__le__iff,axiom,
    ! [X: int,N: nat] :
      ( ( ord_less_eq_nat @ ( nat2 @ X ) @ N )
      = ( ord_less_eq_int @ X @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% nat_le_iff
thf(fact_2077_nat__0__le,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z ) )
        = Z ) ) ).

% nat_0_le
thf(fact_2078_int__eq__iff,axiom,
    ! [M: nat,Z: int] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = Z )
      = ( ( M
          = ( nat2 @ Z ) )
        & ( ord_less_eq_int @ zero_zero_int @ Z ) ) ) ).

% int_eq_iff
thf(fact_2079_nat__int__add,axiom,
    ! [A: nat,B: nat] :
      ( ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) )
      = ( plus_plus_nat @ A @ B ) ) ).

% nat_int_add
thf(fact_2080_nat__abs__mult__distrib,axiom,
    ! [W: int,Z: int] :
      ( ( nat2 @ ( abs_abs_int @ ( times_times_int @ W @ Z ) ) )
      = ( times_times_nat @ ( nat2 @ ( abs_abs_int @ W ) ) @ ( nat2 @ ( abs_abs_int @ Z ) ) ) ) ).

% nat_abs_mult_distrib
thf(fact_2081_nat__plus__as__int,axiom,
    ( plus_plus_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_plus_as_int
thf(fact_2082_or__nat__def,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M6: nat,N2: nat] : ( nat2 @ ( bit_se1409905431419307370or_int @ ( semiri1314217659103216013at_int @ M6 ) @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ) ).

% or_nat_def
thf(fact_2083_nat__times__as__int,axiom,
    ( times_times_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( times_times_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_times_as_int
thf(fact_2084_real__nat__ceiling__ge,axiom,
    ! [X: real] : ( ord_less_eq_real @ X @ ( semiri5074537144036343181t_real @ ( nat2 @ ( archim7802044766580827645g_real @ X ) ) ) ) ).

% real_nat_ceiling_ge
thf(fact_2085_nat__div__as__int,axiom,
    ( divide_divide_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( divide_divide_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_div_as_int
thf(fact_2086_sgn__real__def,axiom,
    ( sgn_sgn_real
    = ( ^ [A4: real] : ( if_real @ ( A4 = zero_zero_real ) @ zero_zero_real @ ( if_real @ ( ord_less_real @ zero_zero_real @ A4 ) @ one_one_real @ ( uminus_uminus_real @ one_one_real ) ) ) ) ) ).

% sgn_real_def
thf(fact_2087_nat__less__eq__zless,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ W )
     => ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
        = ( ord_less_int @ W @ Z ) ) ) ).

% nat_less_eq_zless
thf(fact_2088_nat__le__eq__zle,axiom,
    ! [W: int,Z: int] :
      ( ( ( ord_less_int @ zero_zero_int @ W )
        | ( ord_less_eq_int @ zero_zero_int @ Z ) )
     => ( ( ord_less_eq_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
        = ( ord_less_eq_int @ W @ Z ) ) ) ).

% nat_le_eq_zle
thf(fact_2089_nat__eq__iff2,axiom,
    ! [M: nat,W: int] :
      ( ( M
        = ( nat2 @ W ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ W )
         => ( W
            = ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ W )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_eq_iff2
thf(fact_2090_nat__eq__iff,axiom,
    ! [W: int,M: nat] :
      ( ( ( nat2 @ W )
        = M )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ W )
         => ( W
            = ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ W )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_eq_iff
thf(fact_2091_le__nat__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_nat @ N @ ( nat2 @ K ) )
        = ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ) ).

% le_nat_iff
thf(fact_2092_nat__add__distrib,axiom,
    ! [Z: int,Z6: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( ord_less_eq_int @ zero_zero_int @ Z6 )
       => ( ( nat2 @ ( plus_plus_int @ Z @ Z6 ) )
          = ( plus_plus_nat @ ( nat2 @ Z ) @ ( nat2 @ Z6 ) ) ) ) ) ).

% nat_add_distrib
thf(fact_2093_nat__mult__distrib,axiom,
    ! [Z: int,Z6: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( nat2 @ ( times_times_int @ Z @ Z6 ) )
        = ( times_times_nat @ ( nat2 @ Z ) @ ( nat2 @ Z6 ) ) ) ) ).

% nat_mult_distrib
thf(fact_2094_Suc__as__int,axiom,
    ( suc
    = ( ^ [A4: nat] : ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A4 ) @ one_one_int ) ) ) ) ).

% Suc_as_int
thf(fact_2095_nat__diff__distrib,axiom,
    ! [Z6: int,Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z6 )
     => ( ( ord_less_eq_int @ Z6 @ Z )
       => ( ( nat2 @ ( minus_minus_int @ Z @ Z6 ) )
          = ( minus_minus_nat @ ( nat2 @ Z ) @ ( nat2 @ Z6 ) ) ) ) ) ).

% nat_diff_distrib
thf(fact_2096_nat__diff__distrib_H,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
       => ( ( nat2 @ ( minus_minus_int @ X @ Y2 ) )
          = ( minus_minus_nat @ ( nat2 @ X ) @ ( nat2 @ Y2 ) ) ) ) ) ).

% nat_diff_distrib'
thf(fact_2097_nat__abs__triangle__ineq,axiom,
    ! [K: int,L2: int] : ( ord_less_eq_nat @ ( nat2 @ ( abs_abs_int @ ( plus_plus_int @ K @ L2 ) ) ) @ ( plus_plus_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ ( nat2 @ ( abs_abs_int @ L2 ) ) ) ) ).

% nat_abs_triangle_ineq
thf(fact_2098_nat__div__distrib,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( nat2 @ ( divide_divide_int @ X @ Y2 ) )
        = ( divide_divide_nat @ ( nat2 @ X ) @ ( nat2 @ Y2 ) ) ) ) ).

% nat_div_distrib
thf(fact_2099_nat__div__distrib_H,axiom,
    ! [Y2: int,X: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
     => ( ( nat2 @ ( divide_divide_int @ X @ Y2 ) )
        = ( divide_divide_nat @ ( nat2 @ X ) @ ( nat2 @ Y2 ) ) ) ) ).

% nat_div_distrib'
thf(fact_2100_nat__floor__neg,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ X @ zero_zero_real )
     => ( ( nat2 @ ( archim6058952711729229775r_real @ X ) )
        = zero_zero_nat ) ) ).

% nat_floor_neg
thf(fact_2101_nat__power__eq,axiom,
    ! [Z: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( nat2 @ ( power_power_int @ Z @ N ) )
        = ( power_power_nat @ ( nat2 @ Z ) @ N ) ) ) ).

% nat_power_eq
thf(fact_2102_nat__mod__distrib,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
       => ( ( nat2 @ ( modulo_modulo_int @ X @ Y2 ) )
          = ( modulo_modulo_nat @ ( nat2 @ X ) @ ( nat2 @ Y2 ) ) ) ) ) ).

% nat_mod_distrib
thf(fact_2103_div__abs__eq__div__nat,axiom,
    ! [K: int,L2: int] :
      ( ( divide_divide_int @ ( abs_abs_int @ K ) @ ( abs_abs_int @ L2 ) )
      = ( semiri1314217659103216013at_int @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ ( nat2 @ ( abs_abs_int @ L2 ) ) ) ) ) ).

% div_abs_eq_div_nat
thf(fact_2104_floor__eq3,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_real @ ( semiri5074537144036343181t_real @ N ) @ X )
     => ( ( ord_less_real @ X @ ( semiri5074537144036343181t_real @ ( suc @ N ) ) )
       => ( ( nat2 @ ( archim6058952711729229775r_real @ X ) )
          = N ) ) ) ).

% floor_eq3
thf(fact_2105_le__nat__floor,axiom,
    ! [X: nat,A: real] :
      ( ( ord_less_eq_real @ ( semiri5074537144036343181t_real @ X ) @ A )
     => ( ord_less_eq_nat @ X @ ( nat2 @ ( archim6058952711729229775r_real @ A ) ) ) ) ).

% le_nat_floor
thf(fact_2106_nat__2,axiom,
    ( ( nat2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = ( suc @ ( suc @ zero_zero_nat ) ) ) ).

% nat_2
thf(fact_2107_sgn__power__injE,axiom,
    ! [A: real,N: nat,X: real,B: real] :
      ( ( ( times_times_real @ ( sgn_sgn_real @ A ) @ ( power_power_real @ ( abs_abs_real @ A ) @ N ) )
        = X )
     => ( ( X
          = ( times_times_real @ ( sgn_sgn_real @ B ) @ ( power_power_real @ ( abs_abs_real @ B ) @ N ) ) )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( A = B ) ) ) ) ).

% sgn_power_injE
thf(fact_2108_Suc__nat__eq__nat__zadd1,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( suc @ ( nat2 @ Z ) )
        = ( nat2 @ ( plus_plus_int @ one_one_int @ Z ) ) ) ) ).

% Suc_nat_eq_nat_zadd1
thf(fact_2109_nat__less__iff,axiom,
    ! [W: int,M: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ W )
     => ( ( ord_less_nat @ ( nat2 @ W ) @ M )
        = ( ord_less_int @ W @ ( semiri1314217659103216013at_int @ M ) ) ) ) ).

% nat_less_iff
thf(fact_2110_nat__mult__distrib__neg,axiom,
    ! [Z: int,Z6: int] :
      ( ( ord_less_eq_int @ Z @ zero_zero_int )
     => ( ( nat2 @ ( times_times_int @ Z @ Z6 ) )
        = ( times_times_nat @ ( nat2 @ ( uminus_uminus_int @ Z ) ) @ ( nat2 @ ( uminus_uminus_int @ Z6 ) ) ) ) ) ).

% nat_mult_distrib_neg
thf(fact_2111_nat__abs__int__diff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_eq_nat @ A @ B )
       => ( ( nat2 @ ( abs_abs_int @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) )
          = ( minus_minus_nat @ B @ A ) ) )
      & ( ~ ( ord_less_eq_nat @ A @ B )
       => ( ( nat2 @ ( abs_abs_int @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) )
          = ( minus_minus_nat @ A @ B ) ) ) ) ).

% nat_abs_int_diff
thf(fact_2112_floor__eq4,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_eq_real @ ( semiri5074537144036343181t_real @ N ) @ X )
     => ( ( ord_less_real @ X @ ( semiri5074537144036343181t_real @ ( suc @ N ) ) )
       => ( ( nat2 @ ( archim6058952711729229775r_real @ X ) )
          = N ) ) ) ).

% floor_eq4
thf(fact_2113_num_Osize__gen_I1_J,axiom,
    ( ( size_num @ one )
    = zero_zero_nat ) ).

% num.size_gen(1)
thf(fact_2114_nat__dvd__iff,axiom,
    ! [Z: int,M: nat] :
      ( ( dvd_dvd_nat @ ( nat2 @ Z ) @ M )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ Z )
         => ( dvd_dvd_int @ Z @ ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ Z )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_dvd_iff
thf(fact_2115_cis__Arg__unique,axiom,
    ! [Z: complex,X: real] :
      ( ( ( sgn_sgn_complex @ Z )
        = ( cis @ X ) )
     => ( ( ord_less_real @ ( uminus_uminus_real @ pi ) @ X )
       => ( ( ord_less_eq_real @ X @ pi )
         => ( ( arg @ Z )
            = X ) ) ) ) ).

% cis_Arg_unique
thf(fact_2116_Arg__correct,axiom,
    ! [Z: complex] :
      ( ( Z != zero_zero_complex )
     => ( ( ( sgn_sgn_complex @ Z )
          = ( cis @ ( arg @ Z ) ) )
        & ( ord_less_real @ ( uminus_uminus_real @ pi ) @ ( arg @ Z ) )
        & ( ord_less_eq_real @ ( arg @ Z ) @ pi ) ) ) ).

% Arg_correct
thf(fact_2117_even__nat__iff,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( nat2 @ K ) )
        = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K ) ) ) ).

% even_nat_iff
thf(fact_2118_powr__real__of__int,axiom,
    ! [X: real,N: int] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ N )
         => ( ( powr_real @ X @ ( ring_1_of_int_real @ N ) )
            = ( power_power_real @ X @ ( nat2 @ N ) ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ N )
         => ( ( powr_real @ X @ ( ring_1_of_int_real @ N ) )
            = ( inverse_inverse_real @ ( power_power_real @ X @ ( nat2 @ ( uminus_uminus_int @ N ) ) ) ) ) ) ) ) ).

% powr_real_of_int
thf(fact_2119_arctan__inverse,axiom,
    ! [X: real] :
      ( ( X != zero_zero_real )
     => ( ( arctan @ ( divide_divide_real @ one_one_real @ X ) )
        = ( minus_minus_real @ ( divide_divide_real @ ( times_times_real @ ( sgn_sgn_real @ X ) @ pi ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( arctan @ X ) ) ) ) ).

% arctan_inverse
thf(fact_2120_num_Osize__gen_I2_J,axiom,
    ! [X23: num] :
      ( ( size_num @ ( bit0 @ X23 ) )
      = ( plus_plus_nat @ ( size_num @ X23 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size_gen(2)
thf(fact_2121_and__int__unfold,axiom,
    ( bit_se725231765392027082nd_int
    = ( ^ [K3: int,L: int] :
          ( if_int
          @ ( ( K3 = zero_zero_int )
            | ( L = zero_zero_int ) )
          @ zero_zero_int
          @ ( if_int
            @ ( K3
              = ( uminus_uminus_int @ one_one_int ) )
            @ L
            @ ( if_int
              @ ( L
                = ( uminus_uminus_int @ one_one_int ) )
              @ K3
              @ ( plus_plus_int @ ( times_times_int @ ( modulo_modulo_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% and_int_unfold
thf(fact_2122_Arg__def,axiom,
    ( arg
    = ( ^ [Z5: complex] :
          ( if_real @ ( Z5 = zero_zero_complex ) @ zero_zero_real
          @ ( fChoice_real
            @ ^ [A4: real] :
                ( ( ( sgn_sgn_complex @ Z5 )
                  = ( cis @ A4 ) )
                & ( ord_less_real @ ( uminus_uminus_real @ pi ) @ A4 )
                & ( ord_less_eq_real @ A4 @ pi ) ) ) ) ) ) ).

% Arg_def
thf(fact_2123_buildup__gives__empty,axiom,
    ! [N: nat] :
      ( ( vEBT_VEBT_set_vebt @ ( vEBT_vebt_buildup @ N ) )
      = bot_bot_set_nat ) ).

% buildup_gives_empty
thf(fact_2124_concat__bit__of__zero__2,axiom,
    ! [N: nat,K: int] :
      ( ( bit_concat_bit @ N @ K @ zero_zero_int )
      = ( bit_se2923211474154528505it_int @ N @ K ) ) ).

% concat_bit_of_zero_2
thf(fact_2125_and__nonnegative__int__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se725231765392027082nd_int @ K @ L2 ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        | ( ord_less_eq_int @ zero_zero_int @ L2 ) ) ) ).

% and_nonnegative_int_iff
thf(fact_2126_and__negative__int__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_int @ ( bit_se725231765392027082nd_int @ K @ L2 ) @ zero_zero_int )
      = ( ( ord_less_int @ K @ zero_zero_int )
        & ( ord_less_int @ L2 @ zero_zero_int ) ) ) ).

% and_negative_int_iff
thf(fact_2127_take__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se2925701944663578781it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( zero_n2687167440665602831ol_nat @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% take_bit_of_Suc_0
thf(fact_2128_and__minus__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = one_one_int ) ).

% and_minus_numerals(2)
thf(fact_2129_and__minus__numerals_I6_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ one_one_int )
      = one_one_int ) ).

% and_minus_numerals(6)
thf(fact_2130_and__minus__numerals_I5_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ one_one_int )
      = zero_zero_int ) ).

% and_minus_numerals(5)
thf(fact_2131_and__minus__numerals_I1_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = zero_zero_int ) ).

% and_minus_numerals(1)
thf(fact_2132_nat__take__bit__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( nat2 @ ( bit_se2923211474154528505it_int @ N @ K ) )
        = ( bit_se2925701944663578781it_nat @ N @ ( nat2 @ K ) ) ) ) ).

% nat_take_bit_eq
thf(fact_2133_take__bit__nat__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( bit_se2925701944663578781it_nat @ N @ ( nat2 @ K ) )
        = ( nat2 @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ) ).

% take_bit_nat_eq
thf(fact_2134_take__bit__tightened__less__eq__nat,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( bit_se2925701944663578781it_nat @ M @ Q2 ) @ ( bit_se2925701944663578781it_nat @ N @ Q2 ) ) ) ).

% take_bit_tightened_less_eq_nat
thf(fact_2135_take__bit__nat__less__eq__self,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ ( bit_se2925701944663578781it_nat @ N @ M ) @ M ) ).

% take_bit_nat_less_eq_self
thf(fact_2136_take__bit__diff,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( bit_se2923211474154528505it_int @ N @ ( minus_minus_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ ( bit_se2923211474154528505it_int @ N @ L2 ) ) )
      = ( bit_se2923211474154528505it_int @ N @ ( minus_minus_int @ K @ L2 ) ) ) ).

% take_bit_diff
thf(fact_2137_take__bit__minus,axiom,
    ! [N: nat,K: int] :
      ( ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ ( bit_se2923211474154528505it_int @ N @ K ) ) )
      = ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ K ) ) ) ).

% take_bit_minus
thf(fact_2138_take__bit__mult,axiom,
    ! [N: nat,K: int,L2: int] :
      ( ( bit_se2923211474154528505it_int @ N @ ( times_times_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ ( bit_se2923211474154528505it_int @ N @ L2 ) ) )
      = ( bit_se2923211474154528505it_int @ N @ ( times_times_int @ K @ L2 ) ) ) ).

% take_bit_mult
thf(fact_2139_concat__bit__take__bit__eq,axiom,
    ! [N: nat,B: int] :
      ( ( bit_concat_bit @ N @ ( bit_se2923211474154528505it_int @ N @ B ) )
      = ( bit_concat_bit @ N @ B ) ) ).

% concat_bit_take_bit_eq
thf(fact_2140_concat__bit__eq__iff,axiom,
    ! [N: nat,K: int,L2: int,R2: int,S: int] :
      ( ( ( bit_concat_bit @ N @ K @ L2 )
        = ( bit_concat_bit @ N @ R2 @ S ) )
      = ( ( ( bit_se2923211474154528505it_int @ N @ K )
          = ( bit_se2923211474154528505it_int @ N @ R2 ) )
        & ( L2 = S ) ) ) ).

% concat_bit_eq_iff
thf(fact_2141_AND__lower,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ord_less_eq_int @ zero_zero_int @ ( bit_se725231765392027082nd_int @ X @ Y2 ) ) ) ).

% AND_lower
thf(fact_2142_AND__upper1,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ X @ Y2 ) @ X ) ) ).

% AND_upper1
thf(fact_2143_AND__upper2,axiom,
    ! [Y2: int,X: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
     => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ X @ Y2 ) @ Y2 ) ) ).

% AND_upper2
thf(fact_2144_AND__upper1_H,axiom,
    ! [Y2: int,Z: int,Ya: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
     => ( ( ord_less_eq_int @ Y2 @ Z )
       => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ Y2 @ Ya ) @ Z ) ) ) ).

% AND_upper1'
thf(fact_2145_AND__upper2_H,axiom,
    ! [Y2: int,Z: int,X: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
     => ( ( ord_less_eq_int @ Y2 @ Z )
       => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ X @ Y2 ) @ Z ) ) ) ).

% AND_upper2'
thf(fact_2146_take__bit__tightened__less__eq__int,axiom,
    ! [M: nat,N: nat,K: int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_int @ ( bit_se2923211474154528505it_int @ M @ K ) @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ).

% take_bit_tightened_less_eq_int
thf(fact_2147_take__bit__nonnegative,axiom,
    ! [N: nat,K: int] : ( ord_less_eq_int @ zero_zero_int @ ( bit_se2923211474154528505it_int @ N @ K ) ) ).

% take_bit_nonnegative
thf(fact_2148_take__bit__int__less__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% take_bit_int_less_eq_self_iff
thf(fact_2149_not__take__bit__negative,axiom,
    ! [N: nat,K: int] :
      ~ ( ord_less_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ zero_zero_int ) ).

% not_take_bit_negative
thf(fact_2150_take__bit__int__greater__self__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ K @ ( bit_se2923211474154528505it_int @ N @ K ) )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% take_bit_int_greater_self_iff
thf(fact_2151_plus__and__or,axiom,
    ! [X: int,Y2: int] :
      ( ( plus_plus_int @ ( bit_se725231765392027082nd_int @ X @ Y2 ) @ ( bit_se1409905431419307370or_int @ X @ Y2 ) )
      = ( plus_plus_int @ X @ Y2 ) ) ).

% plus_and_or
thf(fact_2152_and__less__eq,axiom,
    ! [L2: int,K: int] :
      ( ( ord_less_int @ L2 @ zero_zero_int )
     => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ K @ L2 ) @ K ) ) ).

% and_less_eq
thf(fact_2153_AND__upper1_H_H,axiom,
    ! [Y2: int,Z: int,Ya: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
     => ( ( ord_less_int @ Y2 @ Z )
       => ( ord_less_int @ ( bit_se725231765392027082nd_int @ Y2 @ Ya ) @ Z ) ) ) ).

% AND_upper1''
thf(fact_2154_AND__upper2_H_H,axiom,
    ! [Y2: int,Z: int,X: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
     => ( ( ord_less_int @ Y2 @ Z )
       => ( ord_less_int @ ( bit_se725231765392027082nd_int @ X @ Y2 ) @ Z ) ) ) ).

% AND_upper2''
thf(fact_2155_take__bit__decr__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
       != zero_zero_int )
     => ( ( bit_se2923211474154528505it_int @ N @ ( minus_minus_int @ K @ one_one_int ) )
        = ( minus_minus_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ one_one_int ) ) ) ).

% take_bit_decr_eq
thf(fact_2156_even__and__iff__int,axiom,
    ! [K: int,L2: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ K @ L2 ) )
      = ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K )
        | ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) ) ).

% even_and_iff_int
thf(fact_2157_take__bit__eq__mask__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
        = ( bit_se2000444600071755411sk_int @ N ) )
      = ( ( bit_se2923211474154528505it_int @ N @ ( plus_plus_int @ K @ one_one_int ) )
        = zero_zero_int ) ) ).

% take_bit_eq_mask_iff
thf(fact_2158_take__bit__nat__eq__self,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
     => ( ( bit_se2925701944663578781it_nat @ N @ M )
        = M ) ) ).

% take_bit_nat_eq_self
thf(fact_2159_take__bit__nat__less__exp,axiom,
    ! [N: nat,M: nat] : ( ord_less_nat @ ( bit_se2925701944663578781it_nat @ N @ M ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% take_bit_nat_less_exp
thf(fact_2160_take__bit__nat__eq__self__iff,axiom,
    ! [N: nat,M: nat] :
      ( ( ( bit_se2925701944663578781it_nat @ N @ M )
        = M )
      = ( ord_less_nat @ M @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% take_bit_nat_eq_self_iff
thf(fact_2161_take__bit__nat__def,axiom,
    ( bit_se2925701944663578781it_nat
    = ( ^ [N2: nat,M6: nat] : ( modulo_modulo_nat @ M6 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% take_bit_nat_def
thf(fact_2162_take__bit__int__less__exp,axiom,
    ! [N: nat,K: int] : ( ord_less_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ).

% take_bit_int_less_exp
thf(fact_2163_take__bit__int__def,axiom,
    ( bit_se2923211474154528505it_int
    = ( ^ [N2: nat,K3: int] : ( modulo_modulo_int @ K3 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% take_bit_int_def
thf(fact_2164_take__bit__nat__less__self__iff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( bit_se2925701944663578781it_nat @ N @ M ) @ M )
      = ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ M ) ) ).

% take_bit_nat_less_self_iff
thf(fact_2165_take__bit__Suc__minus__bit0,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ K ) ) ) )
      = ( times_times_int @ ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% take_bit_Suc_minus_bit0
thf(fact_2166_take__bit__int__greater__eq__self__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ K @ ( bit_se2923211474154528505it_int @ N @ K ) )
      = ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% take_bit_int_greater_eq_self_iff
thf(fact_2167_take__bit__int__less__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K ) ) ).

% take_bit_int_less_self_iff
thf(fact_2168_take__bit__int__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
        = K )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        & ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% take_bit_int_eq_self_iff
thf(fact_2169_take__bit__int__eq__self,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( bit_se2923211474154528505it_int @ N @ K )
          = K ) ) ) ).

% take_bit_int_eq_self
thf(fact_2170_take__bit__numeral__minus__bit0,axiom,
    ! [L2: num,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ K ) ) ) )
      = ( times_times_int @ ( bit_se2923211474154528505it_int @ ( pred_numeral @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% take_bit_numeral_minus_bit0
thf(fact_2171_take__bit__incr__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
       != ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ one_one_int ) )
     => ( ( bit_se2923211474154528505it_int @ N @ ( plus_plus_int @ K @ one_one_int ) )
        = ( plus_plus_int @ one_one_int @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ) ).

% take_bit_incr_eq
thf(fact_2172_take__bit__int__less__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ ( minus_minus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% take_bit_int_less_eq
thf(fact_2173_take__bit__int__greater__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ( ord_less_eq_int @ ( plus_plus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ).

% take_bit_int_greater_eq
thf(fact_2174_signed__take__bit__eq__take__bit__shift,axiom,
    ( bit_ri631733984087533419it_int
    = ( ^ [N2: nat,K3: int] : ( minus_minus_int @ ( bit_se2923211474154528505it_int @ ( suc @ N2 ) @ ( plus_plus_int @ K3 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% signed_take_bit_eq_take_bit_shift
thf(fact_2175_and__int__rec,axiom,
    ( bit_se725231765392027082nd_int
    = ( ^ [K3: int,L: int] :
          ( plus_plus_int
          @ ( zero_n2684676970156552555ol_int
            @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K3 )
              & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) )
          @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% and_int_rec
thf(fact_2176_take__bit__eq__mask__iff__exp__dvd,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
        = ( bit_se2000444600071755411sk_int @ N ) )
      = ( dvd_dvd_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ ( plus_plus_int @ K @ one_one_int ) ) ) ).

% take_bit_eq_mask_iff_exp_dvd
thf(fact_2177_take__bit__minus__small__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ K ) )
          = ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K ) ) ) ) ).

% take_bit_minus_small_eq
thf(fact_2178_take__bit__numeral__minus__bit1,axiom,
    ! [L2: num,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ ( pred_numeral @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ K ) ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% take_bit_numeral_minus_bit1
thf(fact_2179_take__bit__Suc__minus__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ K ) ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% take_bit_Suc_minus_bit1
thf(fact_2180_cis__multiple__2pi,axiom,
    ! [N: real] :
      ( ( member_real @ N @ ring_1_Ints_real )
     => ( ( cis @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ N ) )
        = one_one_complex ) ) ).

% cis_multiple_2pi
thf(fact_2181_pred__numeral__inc,axiom,
    ! [K: num] :
      ( ( pred_numeral @ ( inc @ K ) )
      = ( numeral_numeral_nat @ K ) ) ).

% pred_numeral_inc
thf(fact_2182_and__nat__numerals_I1_J,axiom,
    ! [Y2: num] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y2 ) ) )
      = zero_zero_nat ) ).

% and_nat_numerals(1)
thf(fact_2183_and__nat__numerals_I3_J,axiom,
    ! [X: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = zero_zero_nat ) ).

% and_nat_numerals(3)
thf(fact_2184_and__nat__numerals_I2_J,axiom,
    ! [Y2: num] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y2 ) ) )
      = one_one_nat ) ).

% and_nat_numerals(2)
thf(fact_2185_and__nat__numerals_I4_J,axiom,
    ! [X: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = one_one_nat ) ).

% and_nat_numerals(4)
thf(fact_2186_and__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se727722235901077358nd_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% and_Suc_0_eq
thf(fact_2187_Suc__0__and__eq,axiom,
    ! [N: nat] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Suc_0_and_eq
thf(fact_2188_bot__enat__def,axiom,
    bot_bo4199563552545308370d_enat = zero_z5237406670263579293d_enat ).

% bot_enat_def
thf(fact_2189_bot__nat__def,axiom,
    bot_bot_nat = zero_zero_nat ).

% bot_nat_def
thf(fact_2190_num__induct,axiom,
    ! [P: num > $o,X: num] :
      ( ( P @ one )
     => ( ! [X5: num] :
            ( ( P @ X5 )
           => ( P @ ( inc @ X5 ) ) )
       => ( P @ X ) ) ) ).

% num_induct
thf(fact_2191_add__inc,axiom,
    ! [X: num,Y2: num] :
      ( ( plus_plus_num @ X @ ( inc @ Y2 ) )
      = ( inc @ ( plus_plus_num @ X @ Y2 ) ) ) ).

% add_inc
thf(fact_2192_inc_Osimps_I1_J,axiom,
    ( ( inc @ one )
    = ( bit0 @ one ) ) ).

% inc.simps(1)
thf(fact_2193_inc_Osimps_I2_J,axiom,
    ! [X: num] :
      ( ( inc @ ( bit0 @ X ) )
      = ( bit1 @ X ) ) ).

% inc.simps(2)
thf(fact_2194_inc_Osimps_I3_J,axiom,
    ! [X: num] :
      ( ( inc @ ( bit1 @ X ) )
      = ( bit0 @ ( inc @ X ) ) ) ).

% inc.simps(3)
thf(fact_2195_add__One,axiom,
    ! [X: num] :
      ( ( plus_plus_num @ X @ one )
      = ( inc @ X ) ) ).

% add_One
thf(fact_2196_inc__BitM__eq,axiom,
    ! [N: num] :
      ( ( inc @ ( bitM @ N ) )
      = ( bit0 @ N ) ) ).

% inc_BitM_eq
thf(fact_2197_BitM__inc__eq,axiom,
    ! [N: num] :
      ( ( bitM @ ( inc @ N ) )
      = ( bit1 @ N ) ) ).

% BitM_inc_eq
thf(fact_2198_and__nat__def,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M6: nat,N2: nat] : ( nat2 @ ( bit_se725231765392027082nd_int @ ( semiri1314217659103216013at_int @ M6 ) @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ) ).

% and_nat_def
thf(fact_2199_mult__inc,axiom,
    ! [X: num,Y2: num] :
      ( ( times_times_num @ X @ ( inc @ Y2 ) )
      = ( plus_plus_num @ ( times_times_num @ X @ Y2 ) @ X ) ) ).

% mult_inc
thf(fact_2200_sin__times__pi__eq__0,axiom,
    ! [X: real] :
      ( ( ( sin_real @ ( times_times_real @ X @ pi ) )
        = zero_zero_real )
      = ( member_real @ X @ ring_1_Ints_real ) ) ).

% sin_times_pi_eq_0
thf(fact_2201_sin__integer__2pi,axiom,
    ! [N: real] :
      ( ( member_real @ N @ ring_1_Ints_real )
     => ( ( sin_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ N ) )
        = zero_zero_real ) ) ).

% sin_integer_2pi
thf(fact_2202_cos__integer__2pi,axiom,
    ! [N: real] :
      ( ( member_real @ N @ ring_1_Ints_real )
     => ( ( cos_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) @ N ) )
        = one_one_real ) ) ).

% cos_integer_2pi
thf(fact_2203_and__nat__unfold,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M6: nat,N2: nat] :
          ( if_nat
          @ ( ( M6 = zero_zero_nat )
            | ( N2 = zero_zero_nat ) )
          @ zero_zero_nat
          @ ( plus_plus_nat @ ( times_times_nat @ ( modulo_modulo_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se727722235901077358nd_nat @ ( divide_divide_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% and_nat_unfold
thf(fact_2204_and__nat__rec,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M6: nat,N2: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M6 )
              & ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se727722235901077358nd_nat @ ( divide_divide_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% and_nat_rec
thf(fact_2205_and__int_Osimps,axiom,
    ( bit_se725231765392027082nd_int
    = ( ^ [K3: int,L: int] :
          ( if_int
          @ ( ( member_int @ K3 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
            & ( member_int @ L @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
          @ ( uminus_uminus_int
            @ ( zero_n2684676970156552555ol_int
              @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K3 )
                & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) ) )
          @ ( plus_plus_int
            @ ( zero_n2684676970156552555ol_int
              @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K3 )
                & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) )
            @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% and_int.simps
thf(fact_2206_and__int_Oelims,axiom,
    ! [X: int,Xa2: int,Y2: int] :
      ( ( ( bit_se725231765392027082nd_int @ X @ Xa2 )
        = Y2 )
     => ( ( ( ( member_int @ X @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
            & ( member_int @ Xa2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( Y2
            = ( uminus_uminus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa2 ) ) ) ) ) )
        & ( ~ ( ( member_int @ X @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
              & ( member_int @ Xa2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( Y2
            = ( plus_plus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa2 ) ) )
              @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ X @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ Xa2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% and_int.elims
thf(fact_2207_signed__take__bit__eq__take__bit__minus,axiom,
    ( bit_ri631733984087533419it_int
    = ( ^ [N2: nat,K3: int] : ( minus_minus_int @ ( bit_se2923211474154528505it_int @ ( suc @ N2 ) @ K3 ) @ ( times_times_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( suc @ N2 ) ) @ ( zero_n2684676970156552555ol_int @ ( bit_se1146084159140164899it_int @ K3 @ N2 ) ) ) ) ) ) ).

% signed_take_bit_eq_take_bit_minus
thf(fact_2208_take__bit__Suc__from__most,axiom,
    ! [N: nat,K: int] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ K )
      = ( plus_plus_int @ ( times_times_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ ( zero_n2684676970156552555ol_int @ ( bit_se1146084159140164899it_int @ K @ N ) ) ) @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ).

% take_bit_Suc_from_most
thf(fact_2209_signed__take__bit__nonnegative__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_ri631733984087533419it_int @ N @ K ) )
      = ( ~ ( bit_se1146084159140164899it_int @ K @ N ) ) ) ).

% signed_take_bit_nonnegative_iff
thf(fact_2210_signed__take__bit__negative__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ zero_zero_int )
      = ( bit_se1146084159140164899it_int @ K @ N ) ) ).

% signed_take_bit_negative_iff
thf(fact_2211_bit__minus__numeral__Bit0__Suc__iff,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ W ) ) ) @ ( suc @ N ) )
      = ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ N ) ) ).

% bit_minus_numeral_Bit0_Suc_iff
thf(fact_2212_bit__minus__numeral__Bit1__Suc__iff,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ W ) ) ) @ ( suc @ N ) )
      = ( ~ ( bit_se1146084159140164899it_int @ ( numeral_numeral_int @ W ) @ N ) ) ) ).

% bit_minus_numeral_Bit1_Suc_iff
thf(fact_2213_bit__minus__numeral__int_I1_J,axiom,
    ! [W: num,N: num] :
      ( ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ W ) ) ) @ ( numeral_numeral_nat @ N ) )
      = ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ ( pred_numeral @ N ) ) ) ).

% bit_minus_numeral_int(1)
thf(fact_2214_bit__minus__numeral__int_I2_J,axiom,
    ! [W: num,N: num] :
      ( ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ W ) ) ) @ ( numeral_numeral_nat @ N ) )
      = ( ~ ( bit_se1146084159140164899it_int @ ( numeral_numeral_int @ W ) @ ( pred_numeral @ N ) ) ) ) ).

% bit_minus_numeral_int(2)
thf(fact_2215_bit__and__int__iff,axiom,
    ! [K: int,L2: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_se725231765392027082nd_int @ K @ L2 ) @ N )
      = ( ( bit_se1146084159140164899it_int @ K @ N )
        & ( bit_se1146084159140164899it_int @ L2 @ N ) ) ) ).

% bit_and_int_iff
thf(fact_2216_bit__or__int__iff,axiom,
    ! [K: int,L2: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_se1409905431419307370or_int @ K @ L2 ) @ N )
      = ( ( bit_se1146084159140164899it_int @ K @ N )
        | ( bit_se1146084159140164899it_int @ L2 @ N ) ) ) ).

% bit_or_int_iff
thf(fact_2217_bit__not__int__iff_H,axiom,
    ! [K: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( minus_minus_int @ ( uminus_uminus_int @ K ) @ one_one_int ) @ N )
      = ( ~ ( bit_se1146084159140164899it_int @ K @ N ) ) ) ).

% bit_not_int_iff'
thf(fact_2218_bit__imp__take__bit__positive,axiom,
    ! [N: nat,M: nat,K: int] :
      ( ( ord_less_nat @ N @ M )
     => ( ( bit_se1146084159140164899it_int @ K @ N )
       => ( ord_less_int @ zero_zero_int @ ( bit_se2923211474154528505it_int @ M @ K ) ) ) ) ).

% bit_imp_take_bit_positive
thf(fact_2219_bit__concat__bit__iff,axiom,
    ! [M: nat,K: int,L2: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_concat_bit @ M @ K @ L2 ) @ N )
      = ( ( ( ord_less_nat @ N @ M )
          & ( bit_se1146084159140164899it_int @ K @ N ) )
        | ( ( ord_less_eq_nat @ M @ N )
          & ( bit_se1146084159140164899it_int @ L2 @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% bit_concat_bit_iff
thf(fact_2220_atLeastAtMostPlus1__int__conv,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ M @ ( plus_plus_int @ one_one_int @ N ) )
     => ( ( set_or1266510415728281911st_int @ M @ ( plus_plus_int @ one_one_int @ N ) )
        = ( insert_int @ ( plus_plus_int @ one_one_int @ N ) @ ( set_or1266510415728281911st_int @ M @ N ) ) ) ) ).

% atLeastAtMostPlus1_int_conv
thf(fact_2221_simp__from__to,axiom,
    ( set_or1266510415728281911st_int
    = ( ^ [I4: int,J3: int] : ( if_set_int @ ( ord_less_int @ J3 @ I4 ) @ bot_bot_set_int @ ( insert_int @ I4 @ ( set_or1266510415728281911st_int @ ( plus_plus_int @ I4 @ one_one_int ) @ J3 ) ) ) ) ) ).

% simp_from_to
thf(fact_2222_signed__take__bit__eq__concat__bit,axiom,
    ( bit_ri631733984087533419it_int
    = ( ^ [N2: nat,K3: int] : ( bit_concat_bit @ N2 @ K3 @ ( uminus_uminus_int @ ( zero_n2684676970156552555ol_int @ ( bit_se1146084159140164899it_int @ K3 @ N2 ) ) ) ) ) ) ).

% signed_take_bit_eq_concat_bit
thf(fact_2223_int__bit__bound,axiom,
    ! [K: int] :
      ~ ! [N4: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_eq_nat @ N4 @ M3 )
             => ( ( bit_se1146084159140164899it_int @ K @ M3 )
                = ( bit_se1146084159140164899it_int @ K @ N4 ) ) )
         => ~ ( ( ord_less_nat @ zero_zero_nat @ N4 )
             => ( ( bit_se1146084159140164899it_int @ K @ ( minus_minus_nat @ N4 @ one_one_nat ) )
                = ( ~ ( bit_se1146084159140164899it_int @ K @ N4 ) ) ) ) ) ).

% int_bit_bound
thf(fact_2224_bit__int__def,axiom,
    ( bit_se1146084159140164899it_int
    = ( ^ [K3: int,N2: nat] :
          ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ K3 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) ) ) ).

% bit_int_def
thf(fact_2225_set__bit__eq,axiom,
    ( bit_se7879613467334960850it_int
    = ( ^ [N2: nat,K3: int] :
          ( plus_plus_int @ K3
          @ ( times_times_int
            @ ( zero_n2684676970156552555ol_int
              @ ~ ( bit_se1146084159140164899it_int @ K3 @ N2 ) )
            @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) ) ) ).

% set_bit_eq
thf(fact_2226_unset__bit__eq,axiom,
    ( bit_se4203085406695923979it_int
    = ( ^ [N2: nat,K3: int] : ( minus_minus_int @ K3 @ ( times_times_int @ ( zero_n2684676970156552555ol_int @ ( bit_se1146084159140164899it_int @ K3 @ N2 ) ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) ) ) ).

% unset_bit_eq
thf(fact_2227_and__int_Opelims,axiom,
    ! [X: int,Xa2: int,Y2: int] :
      ( ( ( bit_se725231765392027082nd_int @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ X @ Xa2 ) )
       => ~ ( ( ( ( ( member_int @ X @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                  & ( member_int @ Xa2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( Y2
                  = ( uminus_uminus_int
                    @ ( zero_n2684676970156552555ol_int
                      @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X )
                        & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa2 ) ) ) ) ) )
              & ( ~ ( ( member_int @ X @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                    & ( member_int @ Xa2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( Y2
                  = ( plus_plus_int
                    @ ( zero_n2684676970156552555ol_int
                      @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X )
                        & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa2 ) ) )
                    @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ X @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ Xa2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) )
           => ~ ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ X @ Xa2 ) ) ) ) ) ).

% and_int.pelims
thf(fact_2228_and__int_Opsimps,axiom,
    ! [K: int,L2: int] :
      ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ K @ L2 ) )
     => ( ( ( ( member_int @ K @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
            & ( member_int @ L2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( ( bit_se725231765392027082nd_int @ K @ L2 )
            = ( uminus_uminus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) ) ) ) )
        & ( ~ ( ( member_int @ K @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
              & ( member_int @ L2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( ( bit_se725231765392027082nd_int @ K @ L2 )
            = ( plus_plus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) )
              @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% and_int.psimps
thf(fact_2229_not__bit__Suc__0__Suc,axiom,
    ! [N: nat] :
      ~ ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ ( suc @ N ) ) ).

% not_bit_Suc_0_Suc
thf(fact_2230_bit__Suc__0__iff,axiom,
    ! [N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( N = zero_zero_nat ) ) ).

% bit_Suc_0_iff
thf(fact_2231_lessThan__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ K ) )
      = ( insert_nat @ K @ ( set_ord_lessThan_nat @ K ) ) ) ).

% lessThan_Suc
thf(fact_2232_atMost__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_atMost_nat @ ( suc @ K ) )
      = ( insert_nat @ ( suc @ K ) @ ( set_ord_atMost_nat @ K ) ) ) ).

% atMost_Suc
thf(fact_2233_not__bit__Suc__0__numeral,axiom,
    ! [N: num] :
      ~ ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ N ) ) ).

% not_bit_Suc_0_numeral
thf(fact_2234_atLeast0__atMost__Suc,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ ( suc @ N ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% atLeast0_atMost_Suc
thf(fact_2235_atLeastAtMost__insertL,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( insert_nat @ M @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) )
        = ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% atLeastAtMost_insertL
thf(fact_2236_atLeastAtMostSuc__conv,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) )
        = ( insert_nat @ ( suc @ N ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ).

% atLeastAtMostSuc_conv
thf(fact_2237_Icc__eq__insert__lb__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( set_or1269000886237332187st_nat @ M @ N )
        = ( insert_nat @ M @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) ) ) ) ).

% Icc_eq_insert_lb_nat
thf(fact_2238_lessThan__nat__numeral,axiom,
    ! [K: num] :
      ( ( set_ord_lessThan_nat @ ( numeral_numeral_nat @ K ) )
      = ( insert_nat @ ( pred_numeral @ K ) @ ( set_ord_lessThan_nat @ ( pred_numeral @ K ) ) ) ) ).

% lessThan_nat_numeral
thf(fact_2239_atMost__nat__numeral,axiom,
    ! [K: num] :
      ( ( set_ord_atMost_nat @ ( numeral_numeral_nat @ K ) )
      = ( insert_nat @ ( numeral_numeral_nat @ K ) @ ( set_ord_atMost_nat @ ( pred_numeral @ K ) ) ) ) ).

% atMost_nat_numeral
thf(fact_2240_bit__nat__iff,axiom,
    ! [K: int,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( nat2 @ K ) @ N )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        & ( bit_se1146084159140164899it_int @ K @ N ) ) ) ).

% bit_nat_iff
thf(fact_2241_atLeast1__atMost__eq__remove0,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_set_nat @ ( set_ord_atMost_nat @ N ) @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ).

% atLeast1_atMost_eq_remove0
thf(fact_2242_bit__nat__def,axiom,
    ( bit_se1148574629649215175it_nat
    = ( ^ [M6: nat,N2: nat] :
          ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ M6 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) ) ) ).

% bit_nat_def
thf(fact_2243_set__decode__plus__power__2,axiom,
    ! [N: nat,Z: nat] :
      ( ~ ( member_nat @ N @ ( nat_set_decode @ Z ) )
     => ( ( nat_set_decode @ ( plus_plus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ Z ) )
        = ( insert_nat @ N @ ( nat_set_decode @ Z ) ) ) ) ).

% set_decode_plus_power_2
thf(fact_2244_and__int_Opinduct,axiom,
    ! [A0: int,A1: int,P: int > int > $o] :
      ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ A0 @ A1 ) )
     => ( ! [K2: int,L3: int] :
            ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ K2 @ L3 ) )
           => ( ( ~ ( ( member_int @ K2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                    & ( member_int @ L3 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( P @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) )
             => ( P @ K2 @ L3 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% and_int.pinduct
thf(fact_2245_upto_Opinduct,axiom,
    ! [A0: int,A1: int,P: int > int > $o] :
      ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ A0 @ A1 ) )
     => ( ! [I3: int,J2: int] :
            ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ I3 @ J2 ) )
           => ( ( ( ord_less_eq_int @ I3 @ J2 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) @ J2 ) )
             => ( P @ I3 @ J2 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% upto.pinduct
thf(fact_2246_or__not__num__neg_Opelims,axiom,
    ! [X: num,Xa2: num,Y2: num] :
      ( ( ( bit_or_not_num_neg @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ X @ Xa2 ) )
       => ( ( ( X = one )
           => ( ( Xa2 = one )
             => ( ( Y2 = one )
               => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ one @ one ) ) ) ) )
         => ( ( ( X = one )
             => ! [M5: num] :
                  ( ( Xa2
                    = ( bit0 @ M5 ) )
                 => ( ( Y2
                      = ( bit1 @ M5 ) )
                   => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ one @ ( bit0 @ M5 ) ) ) ) ) )
           => ( ( ( X = one )
               => ! [M5: num] :
                    ( ( Xa2
                      = ( bit1 @ M5 ) )
                   => ( ( Y2
                        = ( bit1 @ M5 ) )
                     => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ one @ ( bit1 @ M5 ) ) ) ) ) )
             => ( ! [N4: num] :
                    ( ( X
                      = ( bit0 @ N4 ) )
                   => ( ( Xa2 = one )
                     => ( ( Y2
                          = ( bit0 @ one ) )
                       => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ ( bit0 @ N4 ) @ one ) ) ) ) )
               => ( ! [N4: num] :
                      ( ( X
                        = ( bit0 @ N4 ) )
                     => ! [M5: num] :
                          ( ( Xa2
                            = ( bit0 @ M5 ) )
                         => ( ( Y2
                              = ( bitM @ ( bit_or_not_num_neg @ N4 @ M5 ) ) )
                           => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ ( bit0 @ N4 ) @ ( bit0 @ M5 ) ) ) ) ) )
                 => ( ! [N4: num] :
                        ( ( X
                          = ( bit0 @ N4 ) )
                       => ! [M5: num] :
                            ( ( Xa2
                              = ( bit1 @ M5 ) )
                           => ( ( Y2
                                = ( bit0 @ ( bit_or_not_num_neg @ N4 @ M5 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ ( bit0 @ N4 ) @ ( bit1 @ M5 ) ) ) ) ) )
                   => ( ! [N4: num] :
                          ( ( X
                            = ( bit1 @ N4 ) )
                         => ( ( Xa2 = one )
                           => ( ( Y2 = one )
                             => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ ( bit1 @ N4 ) @ one ) ) ) ) )
                     => ( ! [N4: num] :
                            ( ( X
                              = ( bit1 @ N4 ) )
                           => ! [M5: num] :
                                ( ( Xa2
                                  = ( bit0 @ M5 ) )
                               => ( ( Y2
                                    = ( bitM @ ( bit_or_not_num_neg @ N4 @ M5 ) ) )
                                 => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ ( bit1 @ N4 ) @ ( bit0 @ M5 ) ) ) ) ) )
                       => ~ ! [N4: num] :
                              ( ( X
                                = ( bit1 @ N4 ) )
                             => ! [M5: num] :
                                  ( ( Xa2
                                    = ( bit1 @ M5 ) )
                                 => ( ( Y2
                                      = ( bitM @ ( bit_or_not_num_neg @ N4 @ M5 ) ) )
                                   => ~ ( accp_P3113834385874906142um_num @ bit_or3848514188828904588eg_rel @ ( product_Pair_num_num @ ( bit1 @ N4 ) @ ( bit1 @ M5 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% or_not_num_neg.pelims
thf(fact_2247_int__ge__less__than2__def,axiom,
    ( int_ge_less_than2
    = ( ^ [D2: int] :
          ( collec213857154873943460nt_int
          @ ( produc4947309494688390418_int_o
            @ ^ [Z7: int,Z5: int] :
                ( ( ord_less_eq_int @ D2 @ Z5 )
                & ( ord_less_int @ Z7 @ Z5 ) ) ) ) ) ) ).

% int_ge_less_than2_def
thf(fact_2248_int__ge__less__than__def,axiom,
    ( int_ge_less_than
    = ( ^ [D2: int] :
          ( collec213857154873943460nt_int
          @ ( produc4947309494688390418_int_o
            @ ^ [Z7: int,Z5: int] :
                ( ( ord_less_eq_int @ D2 @ Z7 )
                & ( ord_less_int @ Z7 @ Z5 ) ) ) ) ) ) ).

% int_ge_less_than_def
thf(fact_2249_VEBT__internal_OminNull_Opelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Y2: $o] :
      ( ( ( vEBT_VEBT_minNull @ X )
        = Y2 )
     => ( ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ X )
       => ( ( ( X
              = ( vEBT_Leaf @ $false @ $false ) )
           => ( Y2
             => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Leaf @ $false @ $false ) ) ) )
         => ( ! [Uv: $o] :
                ( ( X
                  = ( vEBT_Leaf @ $true @ Uv ) )
               => ( ~ Y2
                 => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Leaf @ $true @ Uv ) ) ) )
           => ( ! [Uu: $o] :
                  ( ( X
                    = ( vEBT_Leaf @ Uu @ $true ) )
                 => ( ~ Y2
                   => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Leaf @ Uu @ $true ) ) ) )
             => ( ! [Uw: nat,Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
                    ( ( X
                      = ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw @ Ux @ Uy2 ) )
                   => ( Y2
                     => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw @ Ux @ Uy2 ) ) ) )
               => ~ ! [Uz2: product_prod_nat_nat,Va3: nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                      ( ( X
                        = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz2 ) @ Va3 @ Vb2 @ Vc2 ) )
                     => ( ~ Y2
                       => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz2 ) @ Va3 @ Vb2 @ Vc2 ) ) ) ) ) ) ) ) ) ) ).

% VEBT_internal.minNull.pelims(1)
thf(fact_2250_VEBT__internal_OminNull_Opelims_I3_J,axiom,
    ! [X: vEBT_VEBT] :
      ( ~ ( vEBT_VEBT_minNull @ X )
     => ( ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ X )
       => ( ! [Uv: $o] :
              ( ( X
                = ( vEBT_Leaf @ $true @ Uv ) )
             => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Leaf @ $true @ Uv ) ) )
         => ( ! [Uu: $o] :
                ( ( X
                  = ( vEBT_Leaf @ Uu @ $true ) )
               => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Leaf @ Uu @ $true ) ) )
           => ~ ! [Uz2: product_prod_nat_nat,Va3: nat,Vb2: list_VEBT_VEBT,Vc2: vEBT_VEBT] :
                  ( ( X
                    = ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz2 ) @ Va3 @ Vb2 @ Vc2 ) )
                 => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Node @ ( some_P7363390416028606310at_nat @ Uz2 ) @ Va3 @ Vb2 @ Vc2 ) ) ) ) ) ) ) ).

% VEBT_internal.minNull.pelims(3)
thf(fact_2251_VEBT__internal_OminNull_Opelims_I2_J,axiom,
    ! [X: vEBT_VEBT] :
      ( ( vEBT_VEBT_minNull @ X )
     => ( ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ X )
       => ( ( ( X
              = ( vEBT_Leaf @ $false @ $false ) )
           => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Leaf @ $false @ $false ) ) )
         => ~ ! [Uw: nat,Ux: list_VEBT_VEBT,Uy2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw @ Ux @ Uy2 ) )
               => ~ ( accp_VEBT_VEBT @ vEBT_V6963167321098673237ll_rel @ ( vEBT_Node @ none_P5556105721700978146at_nat @ Uw @ Ux @ Uy2 ) ) ) ) ) ) ).

% VEBT_internal.minNull.pelims(2)
thf(fact_2252_xor__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se6528837805403552850or_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( minus_minus_nat @ ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% xor_Suc_0_eq
thf(fact_2253_Suc__0__xor__eq,axiom,
    ! [N: nat] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_nat @ ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% Suc_0_xor_eq
thf(fact_2254_upto__aux__rec,axiom,
    ( upto_aux
    = ( ^ [I4: int,J3: int,Js: list_int] : ( if_list_int @ ( ord_less_int @ J3 @ I4 ) @ Js @ ( upto_aux @ I4 @ ( minus_minus_int @ J3 @ one_one_int ) @ ( cons_int @ J3 @ Js ) ) ) ) ) ).

% upto_aux_rec
thf(fact_2255_horner__sum__of__bool__2__less,axiom,
    ! [Bs: list_o] : ( ord_less_int @ ( groups9116527308978886569_o_int @ zero_n2684676970156552555ol_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Bs ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( size_size_list_o @ Bs ) ) ) ).

% horner_sum_of_bool_2_less
thf(fact_2256_xor__nat__numerals_I4_J,axiom,
    ! [X: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit0 @ X ) ) ) ).

% xor_nat_numerals(4)
thf(fact_2257_xor__nat__numerals_I3_J,axiom,
    ! [X: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% xor_nat_numerals(3)
thf(fact_2258_xor__nat__numerals_I2_J,axiom,
    ! [Y2: num] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y2 ) ) )
      = ( numeral_numeral_nat @ ( bit0 @ Y2 ) ) ) ).

% xor_nat_numerals(2)
thf(fact_2259_xor__nat__numerals_I1_J,axiom,
    ! [Y2: num] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y2 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y2 ) ) ) ).

% xor_nat_numerals(1)
thf(fact_2260_xor__nat__unfold,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M6: nat,N2: nat] : ( if_nat @ ( M6 = zero_zero_nat ) @ N2 @ ( if_nat @ ( N2 = zero_zero_nat ) @ M6 @ ( plus_plus_nat @ ( modulo_modulo_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( divide_divide_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% xor_nat_unfold
thf(fact_2261_xor__nat__rec,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M6: nat,N2: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M6 ) )
             != ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( divide_divide_nat @ M6 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% xor_nat_rec
thf(fact_2262_upto_Opsimps,axiom,
    ! [I2: int,J: int] :
      ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ I2 @ J ) )
     => ( ( ( ord_less_eq_int @ I2 @ J )
         => ( ( upto @ I2 @ J )
            = ( cons_int @ I2 @ ( upto @ ( plus_plus_int @ I2 @ one_one_int ) @ J ) ) ) )
        & ( ~ ( ord_less_eq_int @ I2 @ J )
         => ( ( upto @ I2 @ J )
            = nil_int ) ) ) ) ).

% upto.psimps
thf(fact_2263_upto_Opelims,axiom,
    ! [X: int,Xa2: int,Y2: list_int] :
      ( ( ( upto @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ X @ Xa2 ) )
       => ~ ( ( ( ( ord_less_eq_int @ X @ Xa2 )
               => ( Y2
                  = ( cons_int @ X @ ( upto @ ( plus_plus_int @ X @ one_one_int ) @ Xa2 ) ) ) )
              & ( ~ ( ord_less_eq_int @ X @ Xa2 )
               => ( Y2 = nil_int ) ) )
           => ~ ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ X @ Xa2 ) ) ) ) ) ).

% upto.pelims
thf(fact_2264_set__encode__def,axiom,
    ( nat_set_encode
    = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% set_encode_def
thf(fact_2265_push__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se545348938243370406it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% push_bit_nonnegative_int_iff
thf(fact_2266_push__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se545348938243370406it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% push_bit_negative_int_iff
thf(fact_2267_concat__bit__of__zero__1,axiom,
    ! [N: nat,L2: int] :
      ( ( bit_concat_bit @ N @ zero_zero_int @ L2 )
      = ( bit_se545348938243370406it_int @ N @ L2 ) ) ).

% concat_bit_of_zero_1
thf(fact_2268_xor__nonnegative__int__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se6526347334894502574or_int @ K @ L2 ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        = ( ord_less_eq_int @ zero_zero_int @ L2 ) ) ) ).

% xor_nonnegative_int_iff
thf(fact_2269_xor__negative__int__iff,axiom,
    ! [K: int,L2: int] :
      ( ( ord_less_int @ ( bit_se6526347334894502574or_int @ K @ L2 ) @ zero_zero_int )
      = ( ( ord_less_int @ K @ zero_zero_int )
       != ( ord_less_int @ L2 @ zero_zero_int ) ) ) ).

% xor_negative_int_iff
thf(fact_2270_upto__Nil,axiom,
    ! [I2: int,J: int] :
      ( ( ( upto @ I2 @ J )
        = nil_int )
      = ( ord_less_int @ J @ I2 ) ) ).

% upto_Nil
thf(fact_2271_upto__Nil2,axiom,
    ! [I2: int,J: int] :
      ( ( nil_int
        = ( upto @ I2 @ J ) )
      = ( ord_less_int @ J @ I2 ) ) ).

% upto_Nil2
thf(fact_2272_upto__empty,axiom,
    ! [J: int,I2: int] :
      ( ( ord_less_int @ J @ I2 )
     => ( ( upto @ I2 @ J )
        = nil_int ) ) ).

% upto_empty
thf(fact_2273_upto__single,axiom,
    ! [I2: int] :
      ( ( upto @ I2 @ I2 )
      = ( cons_int @ I2 @ nil_int ) ) ).

% upto_single
thf(fact_2274_nth__upto,axiom,
    ! [I2: int,K: nat,J: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I2 @ ( semiri1314217659103216013at_int @ K ) ) @ J )
     => ( ( nth_int @ ( upto @ I2 @ J ) @ K )
        = ( plus_plus_int @ I2 @ ( semiri1314217659103216013at_int @ K ) ) ) ) ).

% nth_upto
thf(fact_2275_length__upto,axiom,
    ! [I2: int,J: int] :
      ( ( size_size_list_int @ ( upto @ I2 @ J ) )
      = ( nat2 @ ( plus_plus_int @ ( minus_minus_int @ J @ I2 ) @ one_one_int ) ) ) ).

% length_upto
thf(fact_2276_push__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se547839408752420682it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% push_bit_of_Suc_0
thf(fact_2277_upto__rec__numeral_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
          = ( cons_int @ ( numeral_numeral_int @ M ) @ ( upto @ ( plus_plus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( numeral_numeral_int @ N ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(1)
thf(fact_2278_upto__rec__numeral_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = ( cons_int @ ( numeral_numeral_int @ M ) @ ( upto @ ( plus_plus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(2)
thf(fact_2279_upto__rec__numeral_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
          = ( cons_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( upto @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) @ ( numeral_numeral_int @ N ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(3)
thf(fact_2280_upto__rec__numeral_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = ( cons_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( upto @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(4)
thf(fact_2281_bit__xor__int__iff,axiom,
    ! [K: int,L2: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_se6526347334894502574or_int @ K @ L2 ) @ N )
      = ( ( bit_se1146084159140164899it_int @ K @ N )
       != ( bit_se1146084159140164899it_int @ L2 @ N ) ) ) ).

% bit_xor_int_iff
thf(fact_2282_flip__bit__int__def,axiom,
    ( bit_se2159334234014336723it_int
    = ( ^ [N2: nat,K3: int] : ( bit_se6526347334894502574or_int @ K3 @ ( bit_se545348938243370406it_int @ N2 @ one_one_int ) ) ) ) ).

% flip_bit_int_def
thf(fact_2283_atLeastAtMost__upto,axiom,
    ( set_or1266510415728281911st_int
    = ( ^ [I4: int,J3: int] : ( set_int2 @ ( upto @ I4 @ J3 ) ) ) ) ).

% atLeastAtMost_upto
thf(fact_2284_push__bit__nat__eq,axiom,
    ! [N: nat,K: int] :
      ( ( bit_se547839408752420682it_nat @ N @ ( nat2 @ K ) )
      = ( nat2 @ ( bit_se545348938243370406it_int @ N @ K ) ) ) ).

% push_bit_nat_eq
thf(fact_2285_upto__code,axiom,
    ( upto
    = ( ^ [I4: int,J3: int] : ( upto_aux @ I4 @ J3 @ nil_int ) ) ) ).

% upto_code
thf(fact_2286_upto__aux__def,axiom,
    ( upto_aux
    = ( ^ [I4: int,J3: int] : ( append_int @ ( upto @ I4 @ J3 ) ) ) ) ).

% upto_aux_def
thf(fact_2287_XOR__lower,axiom,
    ! [X: int,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
       => ( ord_less_eq_int @ zero_zero_int @ ( bit_se6526347334894502574or_int @ X @ Y2 ) ) ) ) ).

% XOR_lower
thf(fact_2288_set__bit__nat__def,axiom,
    ( bit_se7882103937844011126it_nat
    = ( ^ [M6: nat,N2: nat] : ( bit_se1412395901928357646or_nat @ N2 @ ( bit_se547839408752420682it_nat @ M6 @ one_one_nat ) ) ) ) ).

% set_bit_nat_def
thf(fact_2289_flip__bit__nat__def,axiom,
    ( bit_se2161824704523386999it_nat
    = ( ^ [M6: nat,N2: nat] : ( bit_se6528837805403552850or_nat @ N2 @ ( bit_se547839408752420682it_nat @ M6 @ one_one_nat ) ) ) ) ).

% flip_bit_nat_def
thf(fact_2290_bit__push__bit__iff__int,axiom,
    ! [M: nat,K: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_se545348938243370406it_int @ M @ K ) @ N )
      = ( ( ord_less_eq_nat @ M @ N )
        & ( bit_se1146084159140164899it_int @ K @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% bit_push_bit_iff_int
thf(fact_2291_xor__nat__def,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M6: nat,N2: nat] : ( nat2 @ ( bit_se6526347334894502574or_int @ ( semiri1314217659103216013at_int @ M6 ) @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ) ).

% xor_nat_def
thf(fact_2292_bit__push__bit__iff__nat,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( bit_se547839408752420682it_nat @ M @ Q2 ) @ N )
      = ( ( ord_less_eq_nat @ M @ N )
        & ( bit_se1148574629649215175it_nat @ Q2 @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% bit_push_bit_iff_nat
thf(fact_2293_concat__bit__eq,axiom,
    ( bit_concat_bit
    = ( ^ [N2: nat,K3: int,L: int] : ( plus_plus_int @ ( bit_se2923211474154528505it_int @ N2 @ K3 ) @ ( bit_se545348938243370406it_int @ N2 @ L ) ) ) ) ).

% concat_bit_eq
thf(fact_2294_upto__split2,axiom,
    ! [I2: int,J: int,K: int] :
      ( ( ord_less_eq_int @ I2 @ J )
     => ( ( ord_less_eq_int @ J @ K )
       => ( ( upto @ I2 @ K )
          = ( append_int @ ( upto @ I2 @ J ) @ ( upto @ ( plus_plus_int @ J @ one_one_int ) @ K ) ) ) ) ) ).

% upto_split2
thf(fact_2295_upto__split1,axiom,
    ! [I2: int,J: int,K: int] :
      ( ( ord_less_eq_int @ I2 @ J )
     => ( ( ord_less_eq_int @ J @ K )
       => ( ( upto @ I2 @ K )
          = ( append_int @ ( upto @ I2 @ ( minus_minus_int @ J @ one_one_int ) ) @ ( upto @ J @ K ) ) ) ) ) ).

% upto_split1
thf(fact_2296_concat__bit__def,axiom,
    ( bit_concat_bit
    = ( ^ [N2: nat,K3: int,L: int] : ( bit_se1409905431419307370or_int @ ( bit_se2923211474154528505it_int @ N2 @ K3 ) @ ( bit_se545348938243370406it_int @ N2 @ L ) ) ) ) ).

% concat_bit_def
thf(fact_2297_set__bit__int__def,axiom,
    ( bit_se7879613467334960850it_int
    = ( ^ [N2: nat,K3: int] : ( bit_se1409905431419307370or_int @ K3 @ ( bit_se545348938243370406it_int @ N2 @ one_one_int ) ) ) ) ).

% set_bit_int_def
thf(fact_2298_upto__rec1,axiom,
    ! [I2: int,J: int] :
      ( ( ord_less_eq_int @ I2 @ J )
     => ( ( upto @ I2 @ J )
        = ( cons_int @ I2 @ ( upto @ ( plus_plus_int @ I2 @ one_one_int ) @ J ) ) ) ) ).

% upto_rec1
thf(fact_2299_upto_Osimps,axiom,
    ( upto
    = ( ^ [I4: int,J3: int] : ( if_list_int @ ( ord_less_eq_int @ I4 @ J3 ) @ ( cons_int @ I4 @ ( upto @ ( plus_plus_int @ I4 @ one_one_int ) @ J3 ) ) @ nil_int ) ) ) ).

% upto.simps
thf(fact_2300_upto_Oelims,axiom,
    ! [X: int,Xa2: int,Y2: list_int] :
      ( ( ( upto @ X @ Xa2 )
        = Y2 )
     => ( ( ( ord_less_eq_int @ X @ Xa2 )
         => ( Y2
            = ( cons_int @ X @ ( upto @ ( plus_plus_int @ X @ one_one_int ) @ Xa2 ) ) ) )
        & ( ~ ( ord_less_eq_int @ X @ Xa2 )
         => ( Y2 = nil_int ) ) ) ) ).

% upto.elims
thf(fact_2301_upto__rec2,axiom,
    ! [I2: int,J: int] :
      ( ( ord_less_eq_int @ I2 @ J )
     => ( ( upto @ I2 @ J )
        = ( append_int @ ( upto @ I2 @ ( minus_minus_int @ J @ one_one_int ) ) @ ( cons_int @ J @ nil_int ) ) ) ) ).

% upto_rec2
thf(fact_2302_push__bit__int__def,axiom,
    ( bit_se545348938243370406it_int
    = ( ^ [N2: nat,K3: int] : ( times_times_int @ K3 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% push_bit_int_def
thf(fact_2303_push__bit__nat__def,axiom,
    ( bit_se547839408752420682it_nat
    = ( ^ [N2: nat,M6: nat] : ( times_times_nat @ M6 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% push_bit_nat_def
thf(fact_2304_upto__split3,axiom,
    ! [I2: int,J: int,K: int] :
      ( ( ord_less_eq_int @ I2 @ J )
     => ( ( ord_less_eq_int @ J @ K )
       => ( ( upto @ I2 @ K )
          = ( append_int @ ( upto @ I2 @ ( minus_minus_int @ J @ one_one_int ) ) @ ( cons_int @ J @ ( upto @ ( plus_plus_int @ J @ one_one_int ) @ K ) ) ) ) ) ) ).

% upto_split3
thf(fact_2305_push__bit__minus__one,axiom,
    ! [N: nat] :
      ( ( bit_se545348938243370406it_int @ N @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% push_bit_minus_one
thf(fact_2306_XOR__upper,axiom,
    ! [X: int,N: nat,Y2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_int @ X @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( ord_less_int @ Y2 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
         => ( ord_less_int @ ( bit_se6526347334894502574or_int @ X @ Y2 ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% XOR_upper
thf(fact_2307_xor__int__rec,axiom,
    ( bit_se6526347334894502574or_int
    = ( ^ [K3: int,L: int] :
          ( plus_plus_int
          @ ( zero_n2684676970156552555ol_int
            @ ( ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K3 ) )
             != ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) ) )
          @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se6526347334894502574or_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% xor_int_rec
thf(fact_2308_xor__int__unfold,axiom,
    ( bit_se6526347334894502574or_int
    = ( ^ [K3: int,L: int] :
          ( if_int
          @ ( K3
            = ( uminus_uminus_int @ one_one_int ) )
          @ ( bit_ri7919022796975470100ot_int @ L )
          @ ( if_int
            @ ( L
              = ( uminus_uminus_int @ one_one_int ) )
            @ ( bit_ri7919022796975470100ot_int @ K3 )
            @ ( if_int @ ( K3 = zero_zero_int ) @ L @ ( if_int @ ( L = zero_zero_int ) @ K3 @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ ( modulo_modulo_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se6526347334894502574or_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ).

% xor_int_unfold
thf(fact_2309_set__encode__insert,axiom,
    ! [A2: set_nat,N: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ~ ( member_nat @ N @ A2 )
       => ( ( nat_set_encode @ ( insert_nat @ N @ A2 ) )
          = ( plus_plus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ ( nat_set_encode @ A2 ) ) ) ) ) ).

% set_encode_insert
thf(fact_2310_valid__eq,axiom,
    vEBT_VEBT_valid = vEBT_invar_vebt ).

% valid_eq
thf(fact_2311_valid__eq2,axiom,
    ! [T: vEBT_VEBT,D: nat] :
      ( ( vEBT_VEBT_valid @ T @ D )
     => ( vEBT_invar_vebt @ T @ D ) ) ).

% valid_eq2
thf(fact_2312_valid__eq1,axiom,
    ! [T: vEBT_VEBT,D: nat] :
      ( ( vEBT_invar_vebt @ T @ D )
     => ( vEBT_VEBT_valid @ T @ D ) ) ).

% valid_eq1
thf(fact_2313_set__vebt__finite,axiom,
    ! [T: vEBT_VEBT,N: nat] :
      ( ( vEBT_invar_vebt @ T @ N )
     => ( finite_finite_nat @ ( vEBT_VEBT_set_vebt @ T ) ) ) ).

% set_vebt_finite
thf(fact_2314_not__negative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_int @ ( bit_ri7919022796975470100ot_int @ K ) @ zero_zero_int )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% not_negative_int_iff
thf(fact_2315_not__nonnegative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_ri7919022796975470100ot_int @ K ) )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% not_nonnegative_int_iff
thf(fact_2316_and__minus__minus__numerals,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( bit_se1409905431419307370or_int @ ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( minus_minus_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ) ) ) ).

% and_minus_minus_numerals
thf(fact_2317_or__minus__minus__numerals,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( bit_se725231765392027082nd_int @ ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( minus_minus_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ) ) ) ).

% or_minus_minus_numerals
thf(fact_2318_bit__not__int__iff,axiom,
    ! [K: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_ri7919022796975470100ot_int @ K ) @ N )
      = ( ~ ( bit_se1146084159140164899it_int @ K @ N ) ) ) ).

% bit_not_int_iff
thf(fact_2319_finite__M__bounded__by__nat,axiom,
    ! [P: nat > $o,I2: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [K3: nat] :
            ( ( P @ K3 )
            & ( ord_less_nat @ K3 @ I2 ) ) ) ) ).

% finite_M_bounded_by_nat
thf(fact_2320_finite__nat__set__iff__bounded,axiom,
    ( finite_finite_nat
    = ( ^ [N6: set_nat] :
        ? [M6: nat] :
        ! [X4: nat] :
          ( ( member_nat @ X4 @ N6 )
         => ( ord_less_nat @ X4 @ M6 ) ) ) ) ).

% finite_nat_set_iff_bounded
thf(fact_2321_bounded__nat__set__is__finite,axiom,
    ! [N3: set_nat,N: nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ N3 )
         => ( ord_less_nat @ X5 @ N ) )
     => ( finite_finite_nat @ N3 ) ) ).

% bounded_nat_set_is_finite
thf(fact_2322_finite__nat__set__iff__bounded__le,axiom,
    ( finite_finite_nat
    = ( ^ [N6: set_nat] :
        ? [M6: nat] :
        ! [X4: nat] :
          ( ( member_nat @ X4 @ N6 )
         => ( ord_less_eq_nat @ X4 @ M6 ) ) ) ) ).

% finite_nat_set_iff_bounded_le
thf(fact_2323_finite__less__ub,axiom,
    ! [F: nat > nat,U: nat] :
      ( ! [N4: nat] : ( ord_less_eq_nat @ N4 @ ( F @ N4 ) )
     => ( finite_finite_nat
        @ ( collect_nat
          @ ^ [N2: nat] : ( ord_less_eq_nat @ ( F @ N2 ) @ U ) ) ) ) ).

% finite_less_ub
thf(fact_2324_or__int__def,axiom,
    ( bit_se1409905431419307370or_int
    = ( ^ [K3: int,L: int] : ( bit_ri7919022796975470100ot_int @ ( bit_se725231765392027082nd_int @ ( bit_ri7919022796975470100ot_int @ K3 ) @ ( bit_ri7919022796975470100ot_int @ L ) ) ) ) ) ).

% or_int_def
thf(fact_2325_VEBT__internal_Ovalid_H_Osimps_I1_J,axiom,
    ! [Uu2: $o,Uv2: $o,D: nat] :
      ( ( vEBT_VEBT_valid @ ( vEBT_Leaf @ Uu2 @ Uv2 ) @ D )
      = ( D = one_one_nat ) ) ).

% VEBT_internal.valid'.simps(1)
thf(fact_2326_not__int__def,axiom,
    ( bit_ri7919022796975470100ot_int
    = ( ^ [K3: int] : ( minus_minus_int @ ( uminus_uminus_int @ K3 ) @ one_one_int ) ) ) ).

% not_int_def
thf(fact_2327_and__not__numerals_I1_J,axiom,
    ( ( bit_se725231765392027082nd_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
    = zero_zero_int ) ).

% and_not_numerals(1)
thf(fact_2328_or__not__numerals_I1_J,axiom,
    ( ( bit_se1409905431419307370or_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
    = ( bit_ri7919022796975470100ot_int @ zero_zero_int ) ) ).

% or_not_numerals(1)
thf(fact_2329_unset__bit__int__def,axiom,
    ( bit_se4203085406695923979it_int
    = ( ^ [N2: nat,K3: int] : ( bit_se725231765392027082nd_int @ K3 @ ( bit_ri7919022796975470100ot_int @ ( bit_se545348938243370406it_int @ N2 @ one_one_int ) ) ) ) ) ).

% unset_bit_int_def
thf(fact_2330_xor__int__def,axiom,
    ( bit_se6526347334894502574or_int
    = ( ^ [K3: int,L: int] : ( bit_se1409905431419307370or_int @ ( bit_se725231765392027082nd_int @ K3 @ ( bit_ri7919022796975470100ot_int @ L ) ) @ ( bit_se725231765392027082nd_int @ ( bit_ri7919022796975470100ot_int @ K3 ) @ L ) ) ) ) ).

% xor_int_def
thf(fact_2331_finite__divisors__nat,axiom,
    ! [M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( finite_finite_nat
        @ ( collect_nat
          @ ^ [D2: nat] : ( dvd_dvd_nat @ D2 @ M ) ) ) ) ).

% finite_divisors_nat
thf(fact_2332_subset__eq__atLeast0__atMost__finite,axiom,
    ! [N3: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N3 @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
     => ( finite_finite_nat @ N3 ) ) ).

% subset_eq_atLeast0_atMost_finite
thf(fact_2333_not__int__div__2,axiom,
    ! [K: int] :
      ( ( divide_divide_int @ ( bit_ri7919022796975470100ot_int @ K ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% not_int_div_2
thf(fact_2334_even__not__iff__int,axiom,
    ! [K: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_ri7919022796975470100ot_int @ K ) )
      = ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K ) ) ) ).

% even_not_iff_int
thf(fact_2335_and__not__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = one_one_int ) ).

% and_not_numerals(2)
thf(fact_2336_and__not__numerals_I4_J,axiom,
    ! [M: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( numeral_numeral_int @ ( bit0 @ M ) ) ) ).

% and_not_numerals(4)
thf(fact_2337_or__not__numerals_I4_J,axiom,
    ! [M: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( bit_ri7919022796975470100ot_int @ one_one_int ) ) ).

% or_not_numerals(4)
thf(fact_2338_or__not__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) ) ).

% or_not_numerals(2)
thf(fact_2339_bit__minus__int__iff,axiom,
    ! [K: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ K ) @ N )
      = ( bit_se1146084159140164899it_int @ ( bit_ri7919022796975470100ot_int @ ( minus_minus_int @ K @ one_one_int ) ) @ N ) ) ).

% bit_minus_int_iff
thf(fact_2340_int__numeral__or__not__num__neg,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ M @ N ) ) ) ) ).

% int_numeral_or_not_num_neg
thf(fact_2341_int__numeral__not__or__num__neg,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ N @ M ) ) ) ) ).

% int_numeral_not_or_num_neg
thf(fact_2342_numeral__or__not__num__eq,axiom,
    ! [M: num,N: num] :
      ( ( numeral_numeral_int @ ( bit_or_not_num_neg @ M @ N ) )
      = ( uminus_uminus_int @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ).

% numeral_or_not_num_eq
thf(fact_2343_and__not__numerals_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ).

% and_not_numerals(5)
thf(fact_2344_and__not__numerals_I7_J,axiom,
    ! [M: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( numeral_numeral_int @ ( bit0 @ M ) ) ) ).

% and_not_numerals(7)
thf(fact_2345_or__not__numerals_I3_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) ) ).

% or_not_numerals(3)
thf(fact_2346_and__not__numerals_I3_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = zero_zero_int ) ).

% and_not_numerals(3)
thf(fact_2347_or__not__numerals_I7_J,axiom,
    ! [M: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( bit_ri7919022796975470100ot_int @ zero_zero_int ) ) ).

% or_not_numerals(7)
thf(fact_2348_and__not__numerals_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ).

% and_not_numerals(6)
thf(fact_2349_and__not__numerals_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ).

% and_not_numerals(9)
thf(fact_2350_or__not__numerals_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ).

% or_not_numerals(6)
thf(fact_2351_even__set__encode__iff,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( nat_set_encode @ A2 ) )
        = ( ~ ( member_nat @ zero_zero_nat @ A2 ) ) ) ) ).

% even_set_encode_iff
thf(fact_2352_or__not__numerals_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% or_not_numerals(5)
thf(fact_2353_and__not__numerals_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% and_not_numerals(8)
thf(fact_2354_or__not__numerals_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% or_not_numerals(8)
thf(fact_2355_or__not__numerals_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% or_not_numerals(9)
thf(fact_2356_not__int__rec,axiom,
    ( bit_ri7919022796975470100ot_int
    = ( ^ [K3: int] : ( plus_plus_int @ ( zero_n2684676970156552555ol_int @ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K3 ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_ri7919022796975470100ot_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% not_int_rec
thf(fact_2357_finite__Collect__le__nat,axiom,
    ! [K: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [N2: nat] : ( ord_less_eq_nat @ N2 @ K ) ) ) ).

% finite_Collect_le_nat
thf(fact_2358_finite__Collect__less__nat,axiom,
    ! [K: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [N2: nat] : ( ord_less_nat @ N2 @ K ) ) ) ).

% finite_Collect_less_nat
thf(fact_2359_finite__interval__int1,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I4: int] :
            ( ( ord_less_eq_int @ A @ I4 )
            & ( ord_less_eq_int @ I4 @ B ) ) ) ) ).

% finite_interval_int1
thf(fact_2360_finite__interval__int2,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I4: int] :
            ( ( ord_less_eq_int @ A @ I4 )
            & ( ord_less_int @ I4 @ B ) ) ) ) ).

% finite_interval_int2
thf(fact_2361_finite__interval__int3,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I4: int] :
            ( ( ord_less_int @ A @ I4 )
            & ( ord_less_eq_int @ I4 @ B ) ) ) ) ).

% finite_interval_int3
thf(fact_2362_finite__nth__roots,axiom,
    ! [N: nat,C: complex] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( finite3207457112153483333omplex
        @ ( collect_complex
          @ ^ [Z5: complex] :
              ( ( power_power_complex @ Z5 @ N )
              = C ) ) ) ) ).

% finite_nth_roots
thf(fact_2363_finite__nat__iff__bounded__le,axiom,
    ( finite_finite_nat
    = ( ^ [S4: set_nat] :
        ? [K3: nat] : ( ord_less_eq_set_nat @ S4 @ ( set_ord_atMost_nat @ K3 ) ) ) ) ).

% finite_nat_iff_bounded_le
thf(fact_2364_bij__betw__nth__root__unity,axiom,
    ! [C: complex,N: nat] :
      ( ( C != zero_zero_complex )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( bij_be1856998921033663316omplex @ ( times_times_complex @ ( times_times_complex @ ( real_V4546457046886955230omplex @ ( root @ N @ ( real_V1022390504157884413omplex @ C ) ) ) @ ( cis @ ( divide_divide_real @ ( arg @ C ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) )
          @ ( collect_complex
            @ ^ [Z5: complex] :
                ( ( power_power_complex @ Z5 @ N )
                = one_one_complex ) )
          @ ( collect_complex
            @ ^ [Z5: complex] :
                ( ( power_power_complex @ Z5 @ N )
                = C ) ) ) ) ) ).

% bij_betw_nth_root_unity
thf(fact_2365_finite__nat__bounded,axiom,
    ! [S3: set_nat] :
      ( ( finite_finite_nat @ S3 )
     => ? [K2: nat] : ( ord_less_eq_set_nat @ S3 @ ( set_ord_lessThan_nat @ K2 ) ) ) ).

% finite_nat_bounded
thf(fact_2366_real__root__zero,axiom,
    ! [N: nat] :
      ( ( root @ N @ zero_zero_real )
      = zero_zero_real ) ).

% real_root_zero
thf(fact_2367_real__root__Suc__0,axiom,
    ! [X: real] :
      ( ( root @ ( suc @ zero_zero_nat ) @ X )
      = X ) ).

% real_root_Suc_0
thf(fact_2368_root__0,axiom,
    ! [X: real] :
      ( ( root @ zero_zero_nat @ X )
      = zero_zero_real ) ).

% root_0
thf(fact_2369_real__root__eq__iff,axiom,
    ! [N: nat,X: real,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ( root @ N @ X )
          = ( root @ N @ Y2 ) )
        = ( X = Y2 ) ) ) ).

% real_root_eq_iff
thf(fact_2370_real__root__eq__0__iff,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ( root @ N @ X )
          = zero_zero_real )
        = ( X = zero_zero_real ) ) ) ).

% real_root_eq_0_iff
thf(fact_2371_real__root__less__iff,axiom,
    ! [N: nat,X: real,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ ( root @ N @ X ) @ ( root @ N @ Y2 ) )
        = ( ord_less_real @ X @ Y2 ) ) ) ).

% real_root_less_iff
thf(fact_2372_real__root__le__iff,axiom,
    ! [N: nat,X: real,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ ( root @ N @ X ) @ ( root @ N @ Y2 ) )
        = ( ord_less_eq_real @ X @ Y2 ) ) ) ).

% real_root_le_iff
thf(fact_2373_real__root__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( root @ N @ one_one_real )
        = one_one_real ) ) ).

% real_root_one
thf(fact_2374_real__root__eq__1__iff,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ( root @ N @ X )
          = one_one_real )
        = ( X = one_one_real ) ) ) ).

% real_root_eq_1_iff
thf(fact_2375_real__root__lt__0__iff,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ ( root @ N @ X ) @ zero_zero_real )
        = ( ord_less_real @ X @ zero_zero_real ) ) ) ).

% real_root_lt_0_iff
thf(fact_2376_real__root__gt__0__iff,axiom,
    ! [N: nat,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ ( root @ N @ Y2 ) )
        = ( ord_less_real @ zero_zero_real @ Y2 ) ) ) ).

% real_root_gt_0_iff
thf(fact_2377_real__root__ge__0__iff,axiom,
    ! [N: nat,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ zero_zero_real @ ( root @ N @ Y2 ) )
        = ( ord_less_eq_real @ zero_zero_real @ Y2 ) ) ) ).

% real_root_ge_0_iff
thf(fact_2378_real__root__le__0__iff,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ ( root @ N @ X ) @ zero_zero_real )
        = ( ord_less_eq_real @ X @ zero_zero_real ) ) ) ).

% real_root_le_0_iff
thf(fact_2379_real__root__gt__1__iff,axiom,
    ! [N: nat,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ one_one_real @ ( root @ N @ Y2 ) )
        = ( ord_less_real @ one_one_real @ Y2 ) ) ) ).

% real_root_gt_1_iff
thf(fact_2380_real__root__lt__1__iff,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ ( root @ N @ X ) @ one_one_real )
        = ( ord_less_real @ X @ one_one_real ) ) ) ).

% real_root_lt_1_iff
thf(fact_2381_real__root__le__1__iff,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ ( root @ N @ X ) @ one_one_real )
        = ( ord_less_eq_real @ X @ one_one_real ) ) ) ).

% real_root_le_1_iff
thf(fact_2382_real__root__ge__1__iff,axiom,
    ! [N: nat,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ one_one_real @ ( root @ N @ Y2 ) )
        = ( ord_less_eq_real @ one_one_real @ Y2 ) ) ) ).

% real_root_ge_1_iff
thf(fact_2383_real__root__pow__pos2,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ zero_zero_real @ X )
       => ( ( power_power_real @ ( root @ N @ X ) @ N )
          = X ) ) ) ).

% real_root_pow_pos2
thf(fact_2384_real__root__minus,axiom,
    ! [N: nat,X: real] :
      ( ( root @ N @ ( uminus_uminus_real @ X ) )
      = ( uminus_uminus_real @ ( root @ N @ X ) ) ) ).

% real_root_minus
thf(fact_2385_real__root__divide,axiom,
    ! [N: nat,X: real,Y2: real] :
      ( ( root @ N @ ( divide_divide_real @ X @ Y2 ) )
      = ( divide_divide_real @ ( root @ N @ X ) @ ( root @ N @ Y2 ) ) ) ).

% real_root_divide
thf(fact_2386_real__root__commute,axiom,
    ! [M: nat,N: nat,X: real] :
      ( ( root @ M @ ( root @ N @ X ) )
      = ( root @ N @ ( root @ M @ X ) ) ) ).

% real_root_commute
thf(fact_2387_real__root__mult__exp,axiom,
    ! [M: nat,N: nat,X: real] :
      ( ( root @ ( times_times_nat @ M @ N ) @ X )
      = ( root @ M @ ( root @ N @ X ) ) ) ).

% real_root_mult_exp
thf(fact_2388_real__root__mult,axiom,
    ! [N: nat,X: real,Y2: real] :
      ( ( root @ N @ ( times_times_real @ X @ Y2 ) )
      = ( times_times_real @ ( root @ N @ X ) @ ( root @ N @ Y2 ) ) ) ).

% real_root_mult
thf(fact_2389_real__root__inverse,axiom,
    ! [N: nat,X: real] :
      ( ( root @ N @ ( inverse_inverse_real @ X ) )
      = ( inverse_inverse_real @ ( root @ N @ X ) ) ) ).

% real_root_inverse
thf(fact_2390_real__root__pos__pos__le,axiom,
    ! [X: real,N: nat] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ord_less_eq_real @ zero_zero_real @ ( root @ N @ X ) ) ) ).

% real_root_pos_pos_le
thf(fact_2391_real__root__less__mono,axiom,
    ! [N: nat,X: real,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ X @ Y2 )
       => ( ord_less_real @ ( root @ N @ X ) @ ( root @ N @ Y2 ) ) ) ) ).

% real_root_less_mono
thf(fact_2392_real__root__le__mono,axiom,
    ! [N: nat,X: real,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ X @ Y2 )
       => ( ord_less_eq_real @ ( root @ N @ X ) @ ( root @ N @ Y2 ) ) ) ) ).

% real_root_le_mono
thf(fact_2393_real__root__power,axiom,
    ! [N: nat,X: real,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( root @ N @ ( power_power_real @ X @ K ) )
        = ( power_power_real @ ( root @ N @ X ) @ K ) ) ) ).

% real_root_power
thf(fact_2394_real__root__abs,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( root @ N @ ( abs_abs_real @ X ) )
        = ( abs_abs_real @ ( root @ N @ X ) ) ) ) ).

% real_root_abs
thf(fact_2395_sgn__root,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( sgn_sgn_real @ ( root @ N @ X ) )
        = ( sgn_sgn_real @ X ) ) ) ).

% sgn_root
thf(fact_2396_real__root__gt__zero,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ord_less_real @ zero_zero_real @ ( root @ N @ X ) ) ) ) ).

% real_root_gt_zero
thf(fact_2397_real__root__strict__decreasing,axiom,
    ! [N: nat,N3: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ N @ N3 )
       => ( ( ord_less_real @ one_one_real @ X )
         => ( ord_less_real @ ( root @ N3 @ X ) @ ( root @ N @ X ) ) ) ) ) ).

% real_root_strict_decreasing
thf(fact_2398_sqrt__def,axiom,
    ( sqrt
    = ( root @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% sqrt_def
thf(fact_2399_root__abs__power,axiom,
    ! [N: nat,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( abs_abs_real @ ( root @ N @ ( power_power_real @ Y2 @ N ) ) )
        = ( abs_abs_real @ Y2 ) ) ) ).

% root_abs_power
thf(fact_2400_real__root__pos__pos,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ord_less_eq_real @ zero_zero_real @ ( root @ N @ X ) ) ) ) ).

% real_root_pos_pos
thf(fact_2401_real__root__strict__increasing,axiom,
    ! [N: nat,N3: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ N @ N3 )
       => ( ( ord_less_real @ zero_zero_real @ X )
         => ( ( ord_less_real @ X @ one_one_real )
           => ( ord_less_real @ ( root @ N @ X ) @ ( root @ N3 @ X ) ) ) ) ) ) ).

% real_root_strict_increasing
thf(fact_2402_real__root__decreasing,axiom,
    ! [N: nat,N3: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ( ord_less_eq_real @ one_one_real @ X )
         => ( ord_less_eq_real @ ( root @ N3 @ X ) @ ( root @ N @ X ) ) ) ) ) ).

% real_root_decreasing
thf(fact_2403_real__root__pow__pos,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( power_power_real @ ( root @ N @ X ) @ N )
          = X ) ) ) ).

% real_root_pow_pos
thf(fact_2404_real__root__pos__unique,axiom,
    ! [N: nat,Y2: real,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ zero_zero_real @ Y2 )
       => ( ( ( power_power_real @ Y2 @ N )
            = X )
         => ( ( root @ N @ X )
            = Y2 ) ) ) ) ).

% real_root_pos_unique
thf(fact_2405_real__root__power__cancel,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_real @ zero_zero_real @ X )
       => ( ( root @ N @ ( power_power_real @ X @ N ) )
          = X ) ) ) ).

% real_root_power_cancel
thf(fact_2406_odd__real__root__pow,axiom,
    ! [N: nat,X: real] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( power_power_real @ ( root @ N @ X ) @ N )
        = X ) ) ).

% odd_real_root_pow
thf(fact_2407_odd__real__root__unique,axiom,
    ! [N: nat,Y2: real,X: real] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( ( power_power_real @ Y2 @ N )
          = X )
       => ( ( root @ N @ X )
          = Y2 ) ) ) ).

% odd_real_root_unique
thf(fact_2408_odd__real__root__power__cancel,axiom,
    ! [N: nat,X: real] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( root @ N @ ( power_power_real @ X @ N ) )
        = X ) ) ).

% odd_real_root_power_cancel
thf(fact_2409_real__root__increasing,axiom,
    ! [N: nat,N3: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ( ord_less_eq_real @ zero_zero_real @ X )
         => ( ( ord_less_eq_real @ X @ one_one_real )
           => ( ord_less_eq_real @ ( root @ N @ X ) @ ( root @ N3 @ X ) ) ) ) ) ) ).

% real_root_increasing
thf(fact_2410_root__sgn__power,axiom,
    ! [N: nat,Y2: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( root @ N @ ( times_times_real @ ( sgn_sgn_real @ Y2 ) @ ( power_power_real @ ( abs_abs_real @ Y2 ) @ N ) ) )
        = Y2 ) ) ).

% root_sgn_power
thf(fact_2411_sgn__power__root,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_real @ ( sgn_sgn_real @ ( root @ N @ X ) ) @ ( power_power_real @ ( abs_abs_real @ ( root @ N @ X ) ) @ N ) )
        = X ) ) ).

% sgn_power_root
thf(fact_2412_ln__root,axiom,
    ! [N: nat,B: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ B )
       => ( ( ln_ln_real @ ( root @ N @ B ) )
          = ( divide_divide_real @ ( ln_ln_real @ B ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) ) ).

% ln_root
thf(fact_2413_log__root,axiom,
    ! [N: nat,A: real,B: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ( ( log @ B @ ( root @ N @ A ) )
          = ( divide_divide_real @ ( log @ B @ A ) @ ( semiri5074537144036343181t_real @ N ) ) ) ) ) ).

% log_root
thf(fact_2414_log__base__root,axiom,
    ! [N: nat,B: real,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ B )
       => ( ( log @ ( root @ N @ B ) @ X )
          = ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( log @ B @ X ) ) ) ) ) ).

% log_base_root
thf(fact_2415_split__root,axiom,
    ! [P: real > $o,N: nat,X: real] :
      ( ( P @ ( root @ N @ X ) )
      = ( ( ( N = zero_zero_nat )
         => ( P @ zero_zero_real ) )
        & ( ( ord_less_nat @ zero_zero_nat @ N )
         => ! [Y4: real] :
              ( ( ( times_times_real @ ( sgn_sgn_real @ Y4 ) @ ( power_power_real @ ( abs_abs_real @ Y4 ) @ N ) )
                = X )
             => ( P @ Y4 ) ) ) ) ) ).

% split_root
thf(fact_2416_infinite__int__iff__unbounded__le,axiom,
    ! [S3: set_int] :
      ( ( ~ ( finite_finite_int @ S3 ) )
      = ( ! [M6: int] :
          ? [N2: int] :
            ( ( ord_less_eq_int @ M6 @ ( abs_abs_int @ N2 ) )
            & ( member_int @ N2 @ S3 ) ) ) ) ).

% infinite_int_iff_unbounded_le
thf(fact_2417_infinite__nat__iff__unbounded,axiom,
    ! [S3: set_nat] :
      ( ( ~ ( finite_finite_nat @ S3 ) )
      = ( ! [M6: nat] :
          ? [N2: nat] :
            ( ( ord_less_nat @ M6 @ N2 )
            & ( member_nat @ N2 @ S3 ) ) ) ) ).

% infinite_nat_iff_unbounded
thf(fact_2418_unbounded__k__infinite,axiom,
    ! [K: nat,S3: set_nat] :
      ( ! [M5: nat] :
          ( ( ord_less_nat @ K @ M5 )
         => ? [N7: nat] :
              ( ( ord_less_nat @ M5 @ N7 )
              & ( member_nat @ N7 @ S3 ) ) )
     => ~ ( finite_finite_nat @ S3 ) ) ).

% unbounded_k_infinite
thf(fact_2419_infinite__nat__iff__unbounded__le,axiom,
    ! [S3: set_nat] :
      ( ( ~ ( finite_finite_nat @ S3 ) )
      = ( ! [M6: nat] :
          ? [N2: nat] :
            ( ( ord_less_eq_nat @ M6 @ N2 )
            & ( member_nat @ N2 @ S3 ) ) ) ) ).

% infinite_nat_iff_unbounded_le
thf(fact_2420_root__powr__inverse,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( ( root @ N @ X )
          = ( powr_real @ X @ ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ N ) ) ) ) ) ) ).

% root_powr_inverse
thf(fact_2421_finite__nat__iff__bounded,axiom,
    ( finite_finite_nat
    = ( ^ [S4: set_nat] :
        ? [K3: nat] : ( ord_less_eq_set_nat @ S4 @ ( set_ord_lessThan_nat @ K3 ) ) ) ) ).

% finite_nat_iff_bounded
thf(fact_2422_Sum__Ico__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( divide_divide_nat @ ( minus_minus_nat @ ( times_times_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) @ ( times_times_nat @ M @ ( minus_minus_nat @ M @ one_one_nat ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Sum_Ico_nat
thf(fact_2423_Cauchy__iff2,axiom,
    ( topolo4055970368930404560y_real
    = ( ^ [X2: nat > real] :
        ! [J3: nat] :
        ? [M8: nat] :
        ! [M6: nat] :
          ( ( ord_less_eq_nat @ M8 @ M6 )
         => ! [N2: nat] :
              ( ( ord_less_eq_nat @ M8 @ N2 )
             => ( ord_less_real @ ( abs_abs_real @ ( minus_minus_real @ ( X2 @ M6 ) @ ( X2 @ N2 ) ) ) @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ ( suc @ J3 ) ) ) ) ) ) ) ) ).

% Cauchy_iff2
thf(fact_2424_sum__power2,axiom,
    ! [K: nat] :
      ( ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) )
      = ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K ) @ one_one_nat ) ) ).

% sum_power2
thf(fact_2425_atLeastLessThan__singleton,axiom,
    ! [M: nat] :
      ( ( set_or4665077453230672383an_nat @ M @ ( suc @ M ) )
      = ( insert_nat @ M @ bot_bot_set_nat ) ) ).

% atLeastLessThan_singleton
thf(fact_2426_ex__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M6: nat] :
            ( ( ord_less_nat @ M6 @ N )
            & ( P @ M6 ) ) )
      = ( ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
            & ( P @ X4 ) ) ) ) ).

% ex_nat_less_eq
thf(fact_2427_all__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M6: nat] :
            ( ( ord_less_nat @ M6 @ N )
           => ( P @ M6 ) ) )
      = ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
           => ( P @ X4 ) ) ) ) ).

% all_nat_less_eq
thf(fact_2428_atLeastLessThanSuc__atLeastAtMost,axiom,
    ! [L2: nat,U: nat] :
      ( ( set_or4665077453230672383an_nat @ L2 @ ( suc @ U ) )
      = ( set_or1269000886237332187st_nat @ L2 @ U ) ) ).

% atLeastLessThanSuc_atLeastAtMost
thf(fact_2429_atLeast0__lessThan__Suc,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ N @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% atLeast0_lessThan_Suc
thf(fact_2430_subset__eq__atLeast0__lessThan__finite,axiom,
    ! [N3: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N3 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
     => ( finite_finite_nat @ N3 ) ) ).

% subset_eq_atLeast0_lessThan_finite
thf(fact_2431_atLeastLessThanSuc,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_eq_nat @ M @ N )
       => ( ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) )
          = ( insert_nat @ N @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ N )
       => ( ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) )
          = bot_bot_set_nat ) ) ) ).

% atLeastLessThanSuc
thf(fact_2432_prod__Suc__Suc__fact,axiom,
    ! [N: nat] :
      ( ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( semiri1408675320244567234ct_nat @ N ) ) ).

% prod_Suc_Suc_fact
thf(fact_2433_prod__Suc__fact,axiom,
    ! [N: nat] :
      ( ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
      = ( semiri1408675320244567234ct_nat @ N ) ) ).

% prod_Suc_fact
thf(fact_2434_atLeastLessThan__nat__numeral,axiom,
    ! [M: nat,K: num] :
      ( ( ( ord_less_eq_nat @ M @ ( pred_numeral @ K ) )
       => ( ( set_or4665077453230672383an_nat @ M @ ( numeral_numeral_nat @ K ) )
          = ( insert_nat @ ( pred_numeral @ K ) @ ( set_or4665077453230672383an_nat @ M @ ( pred_numeral @ K ) ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ ( pred_numeral @ K ) )
       => ( ( set_or4665077453230672383an_nat @ M @ ( numeral_numeral_nat @ K ) )
          = bot_bot_set_nat ) ) ) ).

% atLeastLessThan_nat_numeral
thf(fact_2435_atLeast1__lessThan__eq__remove0,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_set_nat @ ( set_ord_lessThan_nat @ N ) @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ).

% atLeast1_lessThan_eq_remove0
thf(fact_2436_Chebyshev__sum__upper__nat,axiom,
    ! [N: nat,A: nat > nat,B: nat > nat] :
      ( ! [I3: nat,J2: nat] :
          ( ( ord_less_eq_nat @ I3 @ J2 )
         => ( ( ord_less_nat @ J2 @ N )
           => ( ord_less_eq_nat @ ( A @ I3 ) @ ( A @ J2 ) ) ) )
     => ( ! [I3: nat,J2: nat] :
            ( ( ord_less_eq_nat @ I3 @ J2 )
           => ( ( ord_less_nat @ J2 @ N )
             => ( ord_less_eq_nat @ ( B @ J2 ) @ ( B @ I3 ) ) ) )
       => ( ord_less_eq_nat
          @ ( times_times_nat @ N
            @ ( groups3542108847815614940at_nat
              @ ^ [I4: nat] : ( times_times_nat @ ( A @ I4 ) @ ( B @ I4 ) )
              @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) )
          @ ( times_times_nat @ ( groups3542108847815614940at_nat @ A @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( groups3542108847815614940at_nat @ B @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ) ) ).

% Chebyshev_sum_upper_nat
thf(fact_2437_atLeastLessThanPlusOne__atLeastAtMost__int,axiom,
    ! [L2: int,U: int] :
      ( ( set_or4662586982721622107an_int @ L2 @ ( plus_plus_int @ U @ one_one_int ) )
      = ( set_or1266510415728281911st_int @ L2 @ U ) ) ).

% atLeastLessThanPlusOne_atLeastAtMost_int
thf(fact_2438_atLeastLessThan__upto,axiom,
    ( set_or4662586982721622107an_int
    = ( ^ [I4: int,J3: int] : ( set_int2 @ ( upto @ I4 @ ( minus_minus_int @ J3 @ one_one_int ) ) ) ) ) ).

% atLeastLessThan_upto
thf(fact_2439_Code__Target__Int_Opositive__def,axiom,
    code_Target_positive = numeral_numeral_int ).

% Code_Target_Int.positive_def
thf(fact_2440_divmod__step__integer__def,axiom,
    ( unique4921790084139445826nteger
    = ( ^ [L: num] :
          ( produc6916734918728496179nteger
          @ ^ [Q4: code_integer,R5: code_integer] : ( if_Pro6119634080678213985nteger @ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ L ) @ R5 ) @ ( produc1086072967326762835nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q4 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ R5 @ ( numera6620942414471956472nteger @ L ) ) ) @ ( produc1086072967326762835nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q4 ) @ R5 ) ) ) ) ) ).

% divmod_step_integer_def
thf(fact_2441_csqrt_Osimps_I1_J,axiom,
    ! [Z: complex] :
      ( ( re @ ( csqrt @ Z ) )
      = ( sqrt @ ( divide_divide_real @ ( plus_plus_real @ ( real_V1022390504157884413omplex @ Z ) @ ( re @ Z ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% csqrt.simps(1)
thf(fact_2442_card__Collect__less__nat,axiom,
    ! [N: nat] :
      ( ( finite_card_nat
        @ ( collect_nat
          @ ^ [I4: nat] : ( ord_less_nat @ I4 @ N ) ) )
      = N ) ).

% card_Collect_less_nat
thf(fact_2443_card__atMost,axiom,
    ! [U: nat] :
      ( ( finite_card_nat @ ( set_ord_atMost_nat @ U ) )
      = ( suc @ U ) ) ).

% card_atMost
thf(fact_2444_card__Collect__le__nat,axiom,
    ! [N: nat] :
      ( ( finite_card_nat
        @ ( collect_nat
          @ ^ [I4: nat] : ( ord_less_eq_nat @ I4 @ N ) ) )
      = ( suc @ N ) ) ).

% card_Collect_le_nat
thf(fact_2445_card__atLeastAtMost,axiom,
    ! [L2: nat,U: nat] :
      ( ( finite_card_nat @ ( set_or1269000886237332187st_nat @ L2 @ U ) )
      = ( minus_minus_nat @ ( suc @ U ) @ L2 ) ) ).

% card_atLeastAtMost
thf(fact_2446_complex__Re__numeral,axiom,
    ! [V: num] :
      ( ( re @ ( numera6690914467698888265omplex @ V ) )
      = ( numeral_numeral_real @ V ) ) ).

% complex_Re_numeral
thf(fact_2447_card__atLeastAtMost__int,axiom,
    ! [L2: int,U: int] :
      ( ( finite_card_int @ ( set_or1266510415728281911st_int @ L2 @ U ) )
      = ( nat2 @ ( plus_plus_int @ ( minus_minus_int @ U @ L2 ) @ one_one_int ) ) ) ).

% card_atLeastAtMost_int
thf(fact_2448_Re__divide__numeral,axiom,
    ! [Z: complex,W: num] :
      ( ( re @ ( divide1717551699836669952omplex @ Z @ ( numera6690914467698888265omplex @ W ) ) )
      = ( divide_divide_real @ ( re @ Z ) @ ( numeral_numeral_real @ W ) ) ) ).

% Re_divide_numeral
thf(fact_2449_divmod__integer_H__def,axiom,
    ( unique3479559517661332726nteger
    = ( ^ [M6: num,N2: num] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ ( numera6620942414471956472nteger @ M6 ) @ ( numera6620942414471956472nteger @ N2 ) ) @ ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ M6 ) @ ( numera6620942414471956472nteger @ N2 ) ) ) ) ) ).

% divmod_integer'_def
thf(fact_2450_less__eq__integer__code_I1_J,axiom,
    ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ).

% less_eq_integer_code(1)
thf(fact_2451_times__integer__code_I1_J,axiom,
    ! [K: code_integer] :
      ( ( times_3573771949741848930nteger @ K @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% times_integer_code(1)
thf(fact_2452_times__integer__code_I2_J,axiom,
    ! [L2: code_integer] :
      ( ( times_3573771949741848930nteger @ zero_z3403309356797280102nteger @ L2 )
      = zero_z3403309356797280102nteger ) ).

% times_integer_code(2)
thf(fact_2453_plus__integer__code_I2_J,axiom,
    ! [L2: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ L2 )
      = L2 ) ).

% plus_integer_code(2)
thf(fact_2454_plus__integer__code_I1_J,axiom,
    ! [K: code_integer] :
      ( ( plus_p5714425477246183910nteger @ K @ zero_z3403309356797280102nteger )
      = K ) ).

% plus_integer_code(1)
thf(fact_2455_sgn__integer__code,axiom,
    ( sgn_sgn_Code_integer
    = ( ^ [K3: code_integer] : ( if_Code_integer @ ( K3 = zero_z3403309356797280102nteger ) @ zero_z3403309356797280102nteger @ ( if_Code_integer @ ( ord_le6747313008572928689nteger @ K3 @ zero_z3403309356797280102nteger ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer ) ) ) ) ).

% sgn_integer_code
thf(fact_2456_complex__Re__le__cmod,axiom,
    ! [X: complex] : ( ord_less_eq_real @ ( re @ X ) @ ( real_V1022390504157884413omplex @ X ) ) ).

% complex_Re_le_cmod
thf(fact_2457_one__complex_Osimps_I1_J,axiom,
    ( ( re @ one_one_complex )
    = one_one_real ) ).

% one_complex.simps(1)
thf(fact_2458_plus__complex_Osimps_I1_J,axiom,
    ! [X: complex,Y2: complex] :
      ( ( re @ ( plus_plus_complex @ X @ Y2 ) )
      = ( plus_plus_real @ ( re @ X ) @ ( re @ Y2 ) ) ) ).

% plus_complex.simps(1)
thf(fact_2459_scaleR__complex_Osimps_I1_J,axiom,
    ! [R2: real,X: complex] :
      ( ( re @ ( real_V2046097035970521341omplex @ R2 @ X ) )
      = ( times_times_real @ R2 @ ( re @ X ) ) ) ).

% scaleR_complex.simps(1)
thf(fact_2460_abs__Re__le__cmod,axiom,
    ! [X: complex] : ( ord_less_eq_real @ ( abs_abs_real @ ( re @ X ) ) @ ( real_V1022390504157884413omplex @ X ) ) ).

% abs_Re_le_cmod
thf(fact_2461_Re__csqrt,axiom,
    ! [Z: complex] : ( ord_less_eq_real @ zero_zero_real @ ( re @ ( csqrt @ Z ) ) ) ).

% Re_csqrt
thf(fact_2462_card__less__Suc2,axiom,
    ! [M7: set_nat,I2: nat] :
      ( ~ ( member_nat @ zero_zero_nat @ M7 )
     => ( ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ ( suc @ K3 ) @ M7 )
                & ( ord_less_nat @ K3 @ I2 ) ) ) )
        = ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ K3 @ M7 )
                & ( ord_less_nat @ K3 @ ( suc @ I2 ) ) ) ) ) ) ) ).

% card_less_Suc2
thf(fact_2463_card__less__Suc,axiom,
    ! [M7: set_nat,I2: nat] :
      ( ( member_nat @ zero_zero_nat @ M7 )
     => ( ( suc
          @ ( finite_card_nat
            @ ( collect_nat
              @ ^ [K3: nat] :
                  ( ( member_nat @ ( suc @ K3 ) @ M7 )
                  & ( ord_less_nat @ K3 @ I2 ) ) ) ) )
        = ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ K3 @ M7 )
                & ( ord_less_nat @ K3 @ ( suc @ I2 ) ) ) ) ) ) ) ).

% card_less_Suc
thf(fact_2464_card__less,axiom,
    ! [M7: set_nat,I2: nat] :
      ( ( member_nat @ zero_zero_nat @ M7 )
     => ( ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ K3 @ M7 )
                & ( ord_less_nat @ K3 @ ( suc @ I2 ) ) ) ) )
       != zero_zero_nat ) ) ).

% card_less
thf(fact_2465_one__integer_Orsp,axiom,
    one_one_int = one_one_int ).

% one_integer.rsp
thf(fact_2466_subset__card__intvl__is__intvl,axiom,
    ! [A2: set_nat,K: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( set_or4665077453230672383an_nat @ K @ ( plus_plus_nat @ K @ ( finite_card_nat @ A2 ) ) ) )
     => ( A2
        = ( set_or4665077453230672383an_nat @ K @ ( plus_plus_nat @ K @ ( finite_card_nat @ A2 ) ) ) ) ) ).

% subset_card_intvl_is_intvl
thf(fact_2467_one__natural_Orsp,axiom,
    one_one_nat = one_one_nat ).

% one_natural.rsp
thf(fact_2468_subset__eq__atLeast0__lessThan__card,axiom,
    ! [N3: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N3 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
     => ( ord_less_eq_nat @ ( finite_card_nat @ N3 ) @ N ) ) ).

% subset_eq_atLeast0_lessThan_card
thf(fact_2469_card__sum__le__nat__sum,axiom,
    ! [S3: set_nat] :
      ( ord_less_eq_nat
      @ ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( finite_card_nat @ S3 ) ) )
      @ ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ S3 ) ) ).

% card_sum_le_nat_sum
thf(fact_2470_card__nth__roots,axiom,
    ! [C: complex,N: nat] :
      ( ( C != zero_zero_complex )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( finite_card_complex
            @ ( collect_complex
              @ ^ [Z5: complex] :
                  ( ( power_power_complex @ Z5 @ N )
                  = C ) ) )
          = N ) ) ) ).

% card_nth_roots
thf(fact_2471_card__roots__unity__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( finite_card_complex
          @ ( collect_complex
            @ ^ [Z5: complex] :
                ( ( power_power_complex @ Z5 @ N )
                = one_one_complex ) ) )
        = N ) ) ).

% card_roots_unity_eq
thf(fact_2472_cmod__plus__Re__le__0__iff,axiom,
    ! [Z: complex] :
      ( ( ord_less_eq_real @ ( plus_plus_real @ ( real_V1022390504157884413omplex @ Z ) @ ( re @ Z ) ) @ zero_zero_real )
      = ( ( re @ Z )
        = ( uminus_uminus_real @ ( real_V1022390504157884413omplex @ Z ) ) ) ) ).

% cmod_plus_Re_le_0_iff
thf(fact_2473_cos__n__Re__cis__pow__n,axiom,
    ! [N: nat,A: real] :
      ( ( cos_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ A ) )
      = ( re @ ( power_power_complex @ ( cis @ A ) @ N ) ) ) ).

% cos_n_Re_cis_pow_n
thf(fact_2474_csqrt_Ocode,axiom,
    ( csqrt
    = ( ^ [Z5: complex] :
          ( complex2 @ ( sqrt @ ( divide_divide_real @ ( plus_plus_real @ ( real_V1022390504157884413omplex @ Z5 ) @ ( re @ Z5 ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
          @ ( times_times_real
            @ ( if_real
              @ ( ( im @ Z5 )
                = zero_zero_real )
              @ one_one_real
              @ ( sgn_sgn_real @ ( im @ Z5 ) ) )
            @ ( sqrt @ ( divide_divide_real @ ( minus_minus_real @ ( real_V1022390504157884413omplex @ Z5 ) @ ( re @ Z5 ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% csqrt.code
thf(fact_2475_csqrt_Osimps_I2_J,axiom,
    ! [Z: complex] :
      ( ( im @ ( csqrt @ Z ) )
      = ( times_times_real
        @ ( if_real
          @ ( ( im @ Z )
            = zero_zero_real )
          @ one_one_real
          @ ( sgn_sgn_real @ ( im @ Z ) ) )
        @ ( sqrt @ ( divide_divide_real @ ( minus_minus_real @ ( real_V1022390504157884413omplex @ Z ) @ ( re @ Z ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% csqrt.simps(2)
thf(fact_2476_integer__of__int__code,axiom,
    ( code_integer_of_int
    = ( ^ [K3: int] :
          ( if_Code_integer @ ( ord_less_int @ K3 @ zero_zero_int ) @ ( uminus1351360451143612070nteger @ ( code_integer_of_int @ ( uminus_uminus_int @ K3 ) ) )
          @ ( if_Code_integer @ ( K3 = zero_zero_int ) @ zero_z3403309356797280102nteger
            @ ( if_Code_integer
              @ ( ( modulo_modulo_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
                = zero_zero_int )
              @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( code_integer_of_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) )
              @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( code_integer_of_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) @ one_one_Code_integer ) ) ) ) ) ) ).

% integer_of_int_code
thf(fact_2477_Im__power__real,axiom,
    ! [X: complex,N: nat] :
      ( ( ( im @ X )
        = zero_zero_real )
     => ( ( im @ ( power_power_complex @ X @ N ) )
        = zero_zero_real ) ) ).

% Im_power_real
thf(fact_2478_complex__Im__numeral,axiom,
    ! [V: num] :
      ( ( im @ ( numera6690914467698888265omplex @ V ) )
      = zero_zero_real ) ).

% complex_Im_numeral
thf(fact_2479_Im__i__times,axiom,
    ! [Z: complex] :
      ( ( im @ ( times_times_complex @ imaginary_unit @ Z ) )
      = ( re @ Z ) ) ).

% Im_i_times
thf(fact_2480_Re__power__real,axiom,
    ! [X: complex,N: nat] :
      ( ( ( im @ X )
        = zero_zero_real )
     => ( ( re @ ( power_power_complex @ X @ N ) )
        = ( power_power_real @ ( re @ X ) @ N ) ) ) ).

% Re_power_real
thf(fact_2481_Re__i__times,axiom,
    ! [Z: complex] :
      ( ( re @ ( times_times_complex @ imaginary_unit @ Z ) )
      = ( uminus_uminus_real @ ( im @ Z ) ) ) ).

% Re_i_times
thf(fact_2482_Im__divide__numeral,axiom,
    ! [Z: complex,W: num] :
      ( ( im @ ( divide1717551699836669952omplex @ Z @ ( numera6690914467698888265omplex @ W ) ) )
      = ( divide_divide_real @ ( im @ Z ) @ ( numeral_numeral_real @ W ) ) ) ).

% Im_divide_numeral
thf(fact_2483_csqrt__of__real__nonneg,axiom,
    ! [X: complex] :
      ( ( ( im @ X )
        = zero_zero_real )
     => ( ( ord_less_eq_real @ zero_zero_real @ ( re @ X ) )
       => ( ( csqrt @ X )
          = ( real_V4546457046886955230omplex @ ( sqrt @ ( re @ X ) ) ) ) ) ) ).

% csqrt_of_real_nonneg
thf(fact_2484_csqrt__minus,axiom,
    ! [X: complex] :
      ( ( ( ord_less_real @ ( im @ X ) @ zero_zero_real )
        | ( ( ( im @ X )
            = zero_zero_real )
          & ( ord_less_eq_real @ zero_zero_real @ ( re @ X ) ) ) )
     => ( ( csqrt @ ( uminus1482373934393186551omplex @ X ) )
        = ( times_times_complex @ imaginary_unit @ ( csqrt @ X ) ) ) ) ).

% csqrt_minus
thf(fact_2485_csqrt__of__real__nonpos,axiom,
    ! [X: complex] :
      ( ( ( im @ X )
        = zero_zero_real )
     => ( ( ord_less_eq_real @ ( re @ X ) @ zero_zero_real )
       => ( ( csqrt @ X )
          = ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ ( sqrt @ ( abs_abs_real @ ( re @ X ) ) ) ) ) ) ) ) ).

% csqrt_of_real_nonpos
thf(fact_2486_imaginary__unit_Osimps_I2_J,axiom,
    ( ( im @ imaginary_unit )
    = one_one_real ) ).

% imaginary_unit.simps(2)
thf(fact_2487_one__complex_Osimps_I2_J,axiom,
    ( ( im @ one_one_complex )
    = zero_zero_real ) ).

% one_complex.simps(2)
thf(fact_2488_plus__integer_Oabs__eq,axiom,
    ! [Xa2: int,X: int] :
      ( ( plus_p5714425477246183910nteger @ ( code_integer_of_int @ Xa2 ) @ ( code_integer_of_int @ X ) )
      = ( code_integer_of_int @ ( plus_plus_int @ Xa2 @ X ) ) ) ).

% plus_integer.abs_eq
thf(fact_2489_times__integer_Oabs__eq,axiom,
    ! [Xa2: int,X: int] :
      ( ( times_3573771949741848930nteger @ ( code_integer_of_int @ Xa2 ) @ ( code_integer_of_int @ X ) )
      = ( code_integer_of_int @ ( times_times_int @ Xa2 @ X ) ) ) ).

% times_integer.abs_eq
thf(fact_2490_one__integer__def,axiom,
    ( one_one_Code_integer
    = ( code_integer_of_int @ one_one_int ) ) ).

% one_integer_def
thf(fact_2491_less__eq__integer_Oabs__eq,axiom,
    ! [Xa2: int,X: int] :
      ( ( ord_le3102999989581377725nteger @ ( code_integer_of_int @ Xa2 ) @ ( code_integer_of_int @ X ) )
      = ( ord_less_eq_int @ Xa2 @ X ) ) ).

% less_eq_integer.abs_eq
thf(fact_2492_plus__complex_Osimps_I2_J,axiom,
    ! [X: complex,Y2: complex] :
      ( ( im @ ( plus_plus_complex @ X @ Y2 ) )
      = ( plus_plus_real @ ( im @ X ) @ ( im @ Y2 ) ) ) ).

% plus_complex.simps(2)
thf(fact_2493_scaleR__complex_Osimps_I2_J,axiom,
    ! [R2: real,X: complex] :
      ( ( im @ ( real_V2046097035970521341omplex @ R2 @ X ) )
      = ( times_times_real @ R2 @ ( im @ X ) ) ) ).

% scaleR_complex.simps(2)
thf(fact_2494_abs__Im__le__cmod,axiom,
    ! [X: complex] : ( ord_less_eq_real @ ( abs_abs_real @ ( im @ X ) ) @ ( real_V1022390504157884413omplex @ X ) ) ).

% abs_Im_le_cmod
thf(fact_2495_times__complex_Osimps_I2_J,axiom,
    ! [X: complex,Y2: complex] :
      ( ( im @ ( times_times_complex @ X @ Y2 ) )
      = ( plus_plus_real @ ( times_times_real @ ( re @ X ) @ ( im @ Y2 ) ) @ ( times_times_real @ ( im @ X ) @ ( re @ Y2 ) ) ) ) ).

% times_complex.simps(2)
thf(fact_2496_cmod__Im__le__iff,axiom,
    ! [X: complex,Y2: complex] :
      ( ( ( re @ X )
        = ( re @ Y2 ) )
     => ( ( ord_less_eq_real @ ( real_V1022390504157884413omplex @ X ) @ ( real_V1022390504157884413omplex @ Y2 ) )
        = ( ord_less_eq_real @ ( abs_abs_real @ ( im @ X ) ) @ ( abs_abs_real @ ( im @ Y2 ) ) ) ) ) ).

% cmod_Im_le_iff
thf(fact_2497_cmod__Re__le__iff,axiom,
    ! [X: complex,Y2: complex] :
      ( ( ( im @ X )
        = ( im @ Y2 ) )
     => ( ( ord_less_eq_real @ ( real_V1022390504157884413omplex @ X ) @ ( real_V1022390504157884413omplex @ Y2 ) )
        = ( ord_less_eq_real @ ( abs_abs_real @ ( re @ X ) ) @ ( abs_abs_real @ ( re @ Y2 ) ) ) ) ) ).

% cmod_Re_le_iff
thf(fact_2498_times__complex_Osimps_I1_J,axiom,
    ! [X: complex,Y2: complex] :
      ( ( re @ ( times_times_complex @ X @ Y2 ) )
      = ( minus_minus_real @ ( times_times_real @ ( re @ X ) @ ( re @ Y2 ) ) @ ( times_times_real @ ( im @ X ) @ ( im @ Y2 ) ) ) ) ).

% times_complex.simps(1)
thf(fact_2499_plus__complex_Ocode,axiom,
    ( plus_plus_complex
    = ( ^ [X4: complex,Y4: complex] : ( complex2 @ ( plus_plus_real @ ( re @ X4 ) @ ( re @ Y4 ) ) @ ( plus_plus_real @ ( im @ X4 ) @ ( im @ Y4 ) ) ) ) ) ).

% plus_complex.code
thf(fact_2500_scaleR__complex_Ocode,axiom,
    ( real_V2046097035970521341omplex
    = ( ^ [R5: real,X4: complex] : ( complex2 @ ( times_times_real @ R5 @ ( re @ X4 ) ) @ ( times_times_real @ R5 @ ( im @ X4 ) ) ) ) ) ).

% scaleR_complex.code
thf(fact_2501_csqrt__principal,axiom,
    ! [Z: complex] :
      ( ( ord_less_real @ zero_zero_real @ ( re @ ( csqrt @ Z ) ) )
      | ( ( ( re @ ( csqrt @ Z ) )
          = zero_zero_real )
        & ( ord_less_eq_real @ zero_zero_real @ ( im @ ( csqrt @ Z ) ) ) ) ) ).

% csqrt_principal
thf(fact_2502_cmod__le,axiom,
    ! [Z: complex] : ( ord_less_eq_real @ ( real_V1022390504157884413omplex @ Z ) @ ( plus_plus_real @ ( abs_abs_real @ ( re @ Z ) ) @ ( abs_abs_real @ ( im @ Z ) ) ) ) ).

% cmod_le
thf(fact_2503_sin__n__Im__cis__pow__n,axiom,
    ! [N: nat,A: real] :
      ( ( sin_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ A ) )
      = ( im @ ( power_power_complex @ ( cis @ A ) @ N ) ) ) ).

% sin_n_Im_cis_pow_n
thf(fact_2504_Re__exp,axiom,
    ! [Z: complex] :
      ( ( re @ ( exp_complex @ Z ) )
      = ( times_times_real @ ( exp_real @ ( re @ Z ) ) @ ( cos_real @ ( im @ Z ) ) ) ) ).

% Re_exp
thf(fact_2505_Im__exp,axiom,
    ! [Z: complex] :
      ( ( im @ ( exp_complex @ Z ) )
      = ( times_times_real @ ( exp_real @ ( re @ Z ) ) @ ( sin_real @ ( im @ Z ) ) ) ) ).

% Im_exp
thf(fact_2506_complex__eq,axiom,
    ! [A: complex] :
      ( A
      = ( plus_plus_complex @ ( real_V4546457046886955230omplex @ ( re @ A ) ) @ ( times_times_complex @ imaginary_unit @ ( real_V4546457046886955230omplex @ ( im @ A ) ) ) ) ) ).

% complex_eq
thf(fact_2507_times__complex_Ocode,axiom,
    ( times_times_complex
    = ( ^ [X4: complex,Y4: complex] : ( complex2 @ ( minus_minus_real @ ( times_times_real @ ( re @ X4 ) @ ( re @ Y4 ) ) @ ( times_times_real @ ( im @ X4 ) @ ( im @ Y4 ) ) ) @ ( plus_plus_real @ ( times_times_real @ ( re @ X4 ) @ ( im @ Y4 ) ) @ ( times_times_real @ ( im @ X4 ) @ ( re @ Y4 ) ) ) ) ) ) ).

% times_complex.code
thf(fact_2508_exp__eq__polar,axiom,
    ( exp_complex
    = ( ^ [Z5: complex] : ( times_times_complex @ ( real_V4546457046886955230omplex @ ( exp_real @ ( re @ Z5 ) ) ) @ ( cis @ ( im @ Z5 ) ) ) ) ) ).

% exp_eq_polar
thf(fact_2509_cmod__power2,axiom,
    ! [Z: complex] :
      ( ( power_power_real @ ( real_V1022390504157884413omplex @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_real @ ( power_power_real @ ( re @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% cmod_power2
thf(fact_2510_Im__power2,axiom,
    ! [X: complex] :
      ( ( im @ ( power_power_complex @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( re @ X ) ) @ ( im @ X ) ) ) ).

% Im_power2
thf(fact_2511_Re__power2,axiom,
    ! [X: complex] :
      ( ( re @ ( power_power_complex @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( minus_minus_real @ ( power_power_real @ ( re @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% Re_power2
thf(fact_2512_complex__eq__0,axiom,
    ! [Z: complex] :
      ( ( Z = zero_zero_complex )
      = ( ( plus_plus_real @ ( power_power_real @ ( re @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = zero_zero_real ) ) ).

% complex_eq_0
thf(fact_2513_norm__complex__def,axiom,
    ( real_V1022390504157884413omplex
    = ( ^ [Z5: complex] : ( sqrt @ ( plus_plus_real @ ( power_power_real @ ( re @ Z5 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Z5 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% norm_complex_def
thf(fact_2514_inverse__complex_Osimps_I1_J,axiom,
    ! [X: complex] :
      ( ( re @ ( invers8013647133539491842omplex @ X ) )
      = ( divide_divide_real @ ( re @ X ) @ ( plus_plus_real @ ( power_power_real @ ( re @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% inverse_complex.simps(1)
thf(fact_2515_complex__neq__0,axiom,
    ! [Z: complex] :
      ( ( Z != zero_zero_complex )
      = ( ord_less_real @ zero_zero_real @ ( plus_plus_real @ ( power_power_real @ ( re @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% complex_neq_0
thf(fact_2516_Re__divide,axiom,
    ! [X: complex,Y2: complex] :
      ( ( re @ ( divide1717551699836669952omplex @ X @ Y2 ) )
      = ( divide_divide_real @ ( plus_plus_real @ ( times_times_real @ ( re @ X ) @ ( re @ Y2 ) ) @ ( times_times_real @ ( im @ X ) @ ( im @ Y2 ) ) ) @ ( plus_plus_real @ ( power_power_real @ ( re @ Y2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Y2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% Re_divide
thf(fact_2517_csqrt__unique,axiom,
    ! [W: complex,Z: complex] :
      ( ( ( power_power_complex @ W @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = Z )
     => ( ( ( ord_less_real @ zero_zero_real @ ( re @ W ) )
          | ( ( ( re @ W )
              = zero_zero_real )
            & ( ord_less_eq_real @ zero_zero_real @ ( im @ W ) ) ) )
       => ( ( csqrt @ Z )
          = W ) ) ) ).

% csqrt_unique
thf(fact_2518_csqrt__square,axiom,
    ! [B: complex] :
      ( ( ( ord_less_real @ zero_zero_real @ ( re @ B ) )
        | ( ( ( re @ B )
            = zero_zero_real )
          & ( ord_less_eq_real @ zero_zero_real @ ( im @ B ) ) ) )
     => ( ( csqrt @ ( power_power_complex @ B @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = B ) ) ).

% csqrt_square
thf(fact_2519_inverse__complex_Osimps_I2_J,axiom,
    ! [X: complex] :
      ( ( im @ ( invers8013647133539491842omplex @ X ) )
      = ( divide_divide_real @ ( uminus_uminus_real @ ( im @ X ) ) @ ( plus_plus_real @ ( power_power_real @ ( re @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% inverse_complex.simps(2)
thf(fact_2520_Im__divide,axiom,
    ! [X: complex,Y2: complex] :
      ( ( im @ ( divide1717551699836669952omplex @ X @ Y2 ) )
      = ( divide_divide_real @ ( minus_minus_real @ ( times_times_real @ ( im @ X ) @ ( re @ Y2 ) ) @ ( times_times_real @ ( re @ X ) @ ( im @ Y2 ) ) ) @ ( plus_plus_real @ ( power_power_real @ ( re @ Y2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Y2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% Im_divide
thf(fact_2521_complex__abs__le__norm,axiom,
    ! [Z: complex] : ( ord_less_eq_real @ ( plus_plus_real @ ( abs_abs_real @ ( re @ Z ) ) @ ( abs_abs_real @ ( im @ Z ) ) ) @ ( times_times_real @ ( sqrt @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( real_V1022390504157884413omplex @ Z ) ) ) ).

% complex_abs_le_norm
thf(fact_2522_complex__unit__circle,axiom,
    ! [Z: complex] :
      ( ( Z != zero_zero_complex )
     => ( ( plus_plus_real @ ( power_power_real @ ( divide_divide_real @ ( re @ Z ) @ ( real_V1022390504157884413omplex @ Z ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( divide_divide_real @ ( im @ Z ) @ ( real_V1022390504157884413omplex @ Z ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = one_one_real ) ) ).

% complex_unit_circle
thf(fact_2523_inverse__complex_Ocode,axiom,
    ( invers8013647133539491842omplex
    = ( ^ [X4: complex] : ( complex2 @ ( divide_divide_real @ ( re @ X4 ) @ ( plus_plus_real @ ( power_power_real @ ( re @ X4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ X4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( divide_divide_real @ ( uminus_uminus_real @ ( im @ X4 ) ) @ ( plus_plus_real @ ( power_power_real @ ( re @ X4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ X4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% inverse_complex.code
thf(fact_2524_Complex__divide,axiom,
    ( divide1717551699836669952omplex
    = ( ^ [X4: complex,Y4: complex] : ( complex2 @ ( divide_divide_real @ ( plus_plus_real @ ( times_times_real @ ( re @ X4 ) @ ( re @ Y4 ) ) @ ( times_times_real @ ( im @ X4 ) @ ( im @ Y4 ) ) ) @ ( plus_plus_real @ ( power_power_real @ ( re @ Y4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Y4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( divide_divide_real @ ( minus_minus_real @ ( times_times_real @ ( im @ X4 ) @ ( re @ Y4 ) ) @ ( times_times_real @ ( re @ X4 ) @ ( im @ Y4 ) ) ) @ ( plus_plus_real @ ( power_power_real @ ( re @ Y4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Y4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% Complex_divide
thf(fact_2525_Im__Reals__divide,axiom,
    ! [R2: complex,Z: complex] :
      ( ( member_complex @ R2 @ real_V2521375963428798218omplex )
     => ( ( im @ ( divide1717551699836669952omplex @ R2 @ Z ) )
        = ( divide_divide_real @ ( times_times_real @ ( uminus_uminus_real @ ( re @ R2 ) ) @ ( im @ Z ) ) @ ( power_power_real @ ( real_V1022390504157884413omplex @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% Im_Reals_divide
thf(fact_2526_real__eq__imaginary__iff,axiom,
    ! [Y2: complex,X: complex] :
      ( ( member_complex @ Y2 @ real_V2521375963428798218omplex )
     => ( ( member_complex @ X @ real_V2521375963428798218omplex )
       => ( ( X
            = ( times_times_complex @ imaginary_unit @ Y2 ) )
          = ( ( X = zero_zero_complex )
            & ( Y2 = zero_zero_complex ) ) ) ) ) ).

% real_eq_imaginary_iff
thf(fact_2527_imaginary__eq__real__iff,axiom,
    ! [Y2: complex,X: complex] :
      ( ( member_complex @ Y2 @ real_V2521375963428798218omplex )
     => ( ( member_complex @ X @ real_V2521375963428798218omplex )
       => ( ( ( times_times_complex @ imaginary_unit @ Y2 )
            = X )
          = ( ( X = zero_zero_complex )
            & ( Y2 = zero_zero_complex ) ) ) ) ) ).

% imaginary_eq_real_iff
thf(fact_2528_distinct__upto,axiom,
    ! [I2: int,J: int] : ( distinct_int @ ( upto @ I2 @ J ) ) ).

% distinct_upto
thf(fact_2529_Re__Reals__divide,axiom,
    ! [R2: complex,Z: complex] :
      ( ( member_complex @ R2 @ real_V2521375963428798218omplex )
     => ( ( re @ ( divide1717551699836669952omplex @ R2 @ Z ) )
        = ( divide_divide_real @ ( times_times_real @ ( re @ R2 ) @ ( re @ Z ) ) @ ( power_power_real @ ( real_V1022390504157884413omplex @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% Re_Reals_divide
thf(fact_2530_Code__Numeral_Opositive__def,axiom,
    code_positive = numera6620942414471956472nteger ).

% Code_Numeral.positive_def
thf(fact_2531_complex__mult__cnj,axiom,
    ! [Z: complex] :
      ( ( times_times_complex @ Z @ ( cnj @ Z ) )
      = ( real_V4546457046886955230omplex @ ( plus_plus_real @ ( power_power_real @ ( re @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ ( im @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% complex_mult_cnj
thf(fact_2532_complex__cnj__mult,axiom,
    ! [X: complex,Y2: complex] :
      ( ( cnj @ ( times_times_complex @ X @ Y2 ) )
      = ( times_times_complex @ ( cnj @ X ) @ ( cnj @ Y2 ) ) ) ).

% complex_cnj_mult
thf(fact_2533_complex__cnj__one,axiom,
    ( ( cnj @ one_one_complex )
    = one_one_complex ) ).

% complex_cnj_one
thf(fact_2534_complex__cnj__one__iff,axiom,
    ! [Z: complex] :
      ( ( ( cnj @ Z )
        = one_one_complex )
      = ( Z = one_one_complex ) ) ).

% complex_cnj_one_iff
thf(fact_2535_complex__cnj__power,axiom,
    ! [X: complex,N: nat] :
      ( ( cnj @ ( power_power_complex @ X @ N ) )
      = ( power_power_complex @ ( cnj @ X ) @ N ) ) ).

% complex_cnj_power
thf(fact_2536_complex__cnj__add,axiom,
    ! [X: complex,Y2: complex] :
      ( ( cnj @ ( plus_plus_complex @ X @ Y2 ) )
      = ( plus_plus_complex @ ( cnj @ X ) @ ( cnj @ Y2 ) ) ) ).

% complex_cnj_add
thf(fact_2537_complex__cnj__numeral,axiom,
    ! [W: num] :
      ( ( cnj @ ( numera6690914467698888265omplex @ W ) )
      = ( numera6690914467698888265omplex @ W ) ) ).

% complex_cnj_numeral
thf(fact_2538_complex__cnj__neg__numeral,axiom,
    ! [W: num] :
      ( ( cnj @ ( uminus1482373934393186551omplex @ ( numera6690914467698888265omplex @ W ) ) )
      = ( uminus1482373934393186551omplex @ ( numera6690914467698888265omplex @ W ) ) ) ).

% complex_cnj_neg_numeral
thf(fact_2539_complex__In__mult__cnj__zero,axiom,
    ! [Z: complex] :
      ( ( im @ ( times_times_complex @ Z @ ( cnj @ Z ) ) )
      = zero_zero_real ) ).

% complex_In_mult_cnj_zero
thf(fact_2540_Re__complex__div__eq__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ( re @ ( divide1717551699836669952omplex @ A @ B ) )
        = zero_zero_real )
      = ( ( re @ ( times_times_complex @ A @ ( cnj @ B ) ) )
        = zero_zero_real ) ) ).

% Re_complex_div_eq_0
thf(fact_2541_Im__complex__div__eq__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ( im @ ( divide1717551699836669952omplex @ A @ B ) )
        = zero_zero_real )
      = ( ( im @ ( times_times_complex @ A @ ( cnj @ B ) ) )
        = zero_zero_real ) ) ).

% Im_complex_div_eq_0
thf(fact_2542_complex__mod__sqrt__Re__mult__cnj,axiom,
    ( real_V1022390504157884413omplex
    = ( ^ [Z5: complex] : ( sqrt @ ( re @ ( times_times_complex @ Z5 @ ( cnj @ Z5 ) ) ) ) ) ) ).

% complex_mod_sqrt_Re_mult_cnj
thf(fact_2543_Re__complex__div__lt__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_real @ ( re @ ( divide1717551699836669952omplex @ A @ B ) ) @ zero_zero_real )
      = ( ord_less_real @ ( re @ ( times_times_complex @ A @ ( cnj @ B ) ) ) @ zero_zero_real ) ) ).

% Re_complex_div_lt_0
thf(fact_2544_Re__complex__div__gt__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_real @ zero_zero_real @ ( re @ ( divide1717551699836669952omplex @ A @ B ) ) )
      = ( ord_less_real @ zero_zero_real @ ( re @ ( times_times_complex @ A @ ( cnj @ B ) ) ) ) ) ).

% Re_complex_div_gt_0
thf(fact_2545_Re__complex__div__ge__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( re @ ( divide1717551699836669952omplex @ A @ B ) ) )
      = ( ord_less_eq_real @ zero_zero_real @ ( re @ ( times_times_complex @ A @ ( cnj @ B ) ) ) ) ) ).

% Re_complex_div_ge_0
thf(fact_2546_Re__complex__div__le__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_eq_real @ ( re @ ( divide1717551699836669952omplex @ A @ B ) ) @ zero_zero_real )
      = ( ord_less_eq_real @ ( re @ ( times_times_complex @ A @ ( cnj @ B ) ) ) @ zero_zero_real ) ) ).

% Re_complex_div_le_0
thf(fact_2547_Im__complex__div__lt__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_real @ ( im @ ( divide1717551699836669952omplex @ A @ B ) ) @ zero_zero_real )
      = ( ord_less_real @ ( im @ ( times_times_complex @ A @ ( cnj @ B ) ) ) @ zero_zero_real ) ) ).

% Im_complex_div_lt_0
thf(fact_2548_Im__complex__div__gt__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_real @ zero_zero_real @ ( im @ ( divide1717551699836669952omplex @ A @ B ) ) )
      = ( ord_less_real @ zero_zero_real @ ( im @ ( times_times_complex @ A @ ( cnj @ B ) ) ) ) ) ).

% Im_complex_div_gt_0
thf(fact_2549_Im__complex__div__ge__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( im @ ( divide1717551699836669952omplex @ A @ B ) ) )
      = ( ord_less_eq_real @ zero_zero_real @ ( im @ ( times_times_complex @ A @ ( cnj @ B ) ) ) ) ) ).

% Im_complex_div_ge_0
thf(fact_2550_Im__complex__div__le__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ord_less_eq_real @ ( im @ ( divide1717551699836669952omplex @ A @ B ) ) @ zero_zero_real )
      = ( ord_less_eq_real @ ( im @ ( times_times_complex @ A @ ( cnj @ B ) ) ) @ zero_zero_real ) ) ).

% Im_complex_div_le_0
thf(fact_2551_complex__mod__mult__cnj,axiom,
    ! [Z: complex] :
      ( ( real_V1022390504157884413omplex @ ( times_times_complex @ Z @ ( cnj @ Z ) ) )
      = ( power_power_real @ ( real_V1022390504157884413omplex @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% complex_mod_mult_cnj
thf(fact_2552_complex__div__gt__0,axiom,
    ! [A: complex,B: complex] :
      ( ( ( ord_less_real @ zero_zero_real @ ( re @ ( divide1717551699836669952omplex @ A @ B ) ) )
        = ( ord_less_real @ zero_zero_real @ ( re @ ( times_times_complex @ A @ ( cnj @ B ) ) ) ) )
      & ( ( ord_less_real @ zero_zero_real @ ( im @ ( divide1717551699836669952omplex @ A @ B ) ) )
        = ( ord_less_real @ zero_zero_real @ ( im @ ( times_times_complex @ A @ ( cnj @ B ) ) ) ) ) ) ).

% complex_div_gt_0
thf(fact_2553_complex__norm__square,axiom,
    ! [Z: complex] :
      ( ( real_V4546457046886955230omplex @ ( power_power_real @ ( real_V1022390504157884413omplex @ Z ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( times_times_complex @ Z @ ( cnj @ Z ) ) ) ).

% complex_norm_square
thf(fact_2554_complex__add__cnj,axiom,
    ! [Z: complex] :
      ( ( plus_plus_complex @ Z @ ( cnj @ Z ) )
      = ( real_V4546457046886955230omplex @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( re @ Z ) ) ) ) ).

% complex_add_cnj
thf(fact_2555_complex__diff__cnj,axiom,
    ! [Z: complex] :
      ( ( minus_minus_complex @ Z @ ( cnj @ Z ) )
      = ( times_times_complex @ ( real_V4546457046886955230omplex @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( im @ Z ) ) ) @ imaginary_unit ) ) ).

% complex_diff_cnj
thf(fact_2556_complex__div__cnj,axiom,
    ( divide1717551699836669952omplex
    = ( ^ [A4: complex,B4: complex] : ( divide1717551699836669952omplex @ ( times_times_complex @ A4 @ ( cnj @ B4 ) ) @ ( real_V4546457046886955230omplex @ ( power_power_real @ ( real_V1022390504157884413omplex @ B4 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% complex_div_cnj
thf(fact_2557_cnj__add__mult__eq__Re,axiom,
    ! [Z: complex,W: complex] :
      ( ( plus_plus_complex @ ( times_times_complex @ Z @ ( cnj @ W ) ) @ ( times_times_complex @ ( cnj @ Z ) @ W ) )
      = ( real_V4546457046886955230omplex @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( re @ ( times_times_complex @ Z @ ( cnj @ W ) ) ) ) ) ) ).

% cnj_add_mult_eq_Re
thf(fact_2558_integer__of__num_I3_J,axiom,
    ! [N: num] :
      ( ( code_integer_of_num @ ( bit1 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( code_integer_of_num @ N ) @ ( code_integer_of_num @ N ) ) @ one_one_Code_integer ) ) ).

% integer_of_num(3)
thf(fact_2559_bit__cut__integer__def,axiom,
    ( code_bit_cut_integer
    = ( ^ [K3: code_integer] :
          ( produc6677183202524767010eger_o @ ( divide6298287555418463151nteger @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
          @ ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ K3 ) ) ) ) ).

% bit_cut_integer_def
thf(fact_2560_integer__of__num__def,axiom,
    code_integer_of_num = numera6620942414471956472nteger ).

% integer_of_num_def
thf(fact_2561_integer__of__num__triv_I1_J,axiom,
    ( ( code_integer_of_num @ one )
    = one_one_Code_integer ) ).

% integer_of_num_triv(1)
thf(fact_2562_integer__of__num_I2_J,axiom,
    ! [N: num] :
      ( ( code_integer_of_num @ ( bit0 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( code_integer_of_num @ N ) @ ( code_integer_of_num @ N ) ) ) ).

% integer_of_num(2)
thf(fact_2563_integer__of__num__triv_I2_J,axiom,
    ( ( code_integer_of_num @ ( bit0 @ one ) )
    = ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ).

% integer_of_num_triv(2)
thf(fact_2564_bit__cut__integer__code,axiom,
    ( code_bit_cut_integer
    = ( ^ [K3: code_integer] :
          ( if_Pro5737122678794959658eger_o @ ( K3 = zero_z3403309356797280102nteger ) @ ( produc6677183202524767010eger_o @ zero_z3403309356797280102nteger @ $false )
          @ ( produc9125791028180074456eger_o
            @ ^ [R5: code_integer,S5: code_integer] : ( produc6677183202524767010eger_o @ ( if_Code_integer @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ K3 ) @ R5 @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R5 ) @ S5 ) ) @ ( S5 = one_one_Code_integer ) )
            @ ( code_divmod_abs @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% bit_cut_integer_code
thf(fact_2565_nat_Odisc__eq__case_I2_J,axiom,
    ! [Nat: nat] :
      ( ( Nat != zero_zero_nat )
      = ( case_nat_o @ $false
        @ ^ [Uu3: nat] : $true
        @ Nat ) ) ).

% nat.disc_eq_case(2)
thf(fact_2566_nat_Odisc__eq__case_I1_J,axiom,
    ! [Nat: nat] :
      ( ( Nat = zero_zero_nat )
      = ( case_nat_o @ $true
        @ ^ [Uu3: nat] : $false
        @ Nat ) ) ).

% nat.disc_eq_case(1)
thf(fact_2567_less__eq__nat_Osimps_I2_J,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( case_nat_o @ $false @ ( ord_less_eq_nat @ M ) @ N ) ) ).

% less_eq_nat.simps(2)
thf(fact_2568_max__Suc2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_max_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ ( suc @ N )
        @ ^ [M2: nat] : ( suc @ ( ord_max_nat @ M2 @ N ) )
        @ M ) ) ).

% max_Suc2
thf(fact_2569_max__Suc1,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_max_nat @ ( suc @ N ) @ M )
      = ( case_nat_nat @ ( suc @ N )
        @ ^ [M2: nat] : ( suc @ ( ord_max_nat @ N @ M2 ) )
        @ M ) ) ).

% max_Suc1
thf(fact_2570_diff__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [K3: nat] : K3
        @ ( minus_minus_nat @ M @ N ) ) ) ).

% diff_Suc
thf(fact_2571_divmod__integer__code,axiom,
    ( code_divmod_integer
    = ( ^ [K3: code_integer,L: code_integer] :
          ( if_Pro6119634080678213985nteger @ ( K3 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
          @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ L )
            @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ K3 ) @ ( code_divmod_abs @ K3 @ L )
              @ ( produc6916734918728496179nteger
                @ ^ [R5: code_integer,S5: code_integer] : ( if_Pro6119634080678213985nteger @ ( S5 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R5 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R5 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ L @ S5 ) ) )
                @ ( code_divmod_abs @ K3 @ L ) ) )
            @ ( if_Pro6119634080678213985nteger @ ( L = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ K3 )
              @ ( produc6499014454317279255nteger @ uminus1351360451143612070nteger
                @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ K3 @ zero_z3403309356797280102nteger ) @ ( code_divmod_abs @ K3 @ L )
                  @ ( produc6916734918728496179nteger
                    @ ^ [R5: code_integer,S5: code_integer] : ( if_Pro6119634080678213985nteger @ ( S5 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R5 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R5 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ L ) @ S5 ) ) )
                    @ ( code_divmod_abs @ K3 @ L ) ) ) ) ) ) ) ) ) ).

% divmod_integer_code
thf(fact_2572_floor__real__def,axiom,
    ( archim6058952711729229775r_real
    = ( ^ [X4: real] :
          ( the_int
          @ ^ [Z5: int] :
              ( ( ord_less_eq_real @ ( ring_1_of_int_real @ Z5 ) @ X4 )
              & ( ord_less_real @ X4 @ ( ring_1_of_int_real @ ( plus_plus_int @ Z5 @ one_one_int ) ) ) ) ) ) ) ).

% floor_real_def
thf(fact_2573_floor__rat__def,axiom,
    ( archim3151403230148437115or_rat
    = ( ^ [X4: rat] :
          ( the_int
          @ ^ [Z5: int] :
              ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z5 ) @ X4 )
              & ( ord_less_rat @ X4 @ ( ring_1_of_int_rat @ ( plus_plus_int @ Z5 @ one_one_int ) ) ) ) ) ) ) ).

% floor_rat_def
thf(fact_2574_sgn__rat__def,axiom,
    ( sgn_sgn_rat
    = ( ^ [A4: rat] : ( if_rat @ ( A4 = zero_zero_rat ) @ zero_zero_rat @ ( if_rat @ ( ord_less_rat @ zero_zero_rat @ A4 ) @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ) ) ) ).

% sgn_rat_def
thf(fact_2575_obtain__pos__sum,axiom,
    ! [R2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ R2 )
     => ~ ! [S2: rat] :
            ( ( ord_less_rat @ zero_zero_rat @ S2 )
           => ! [T3: rat] :
                ( ( ord_less_rat @ zero_zero_rat @ T3 )
               => ( R2
                 != ( plus_plus_rat @ S2 @ T3 ) ) ) ) ) ).

% obtain_pos_sum
thf(fact_2576_less__eq__rat__def,axiom,
    ( ord_less_eq_rat
    = ( ^ [X4: rat,Y4: rat] :
          ( ( ord_less_rat @ X4 @ Y4 )
          | ( X4 = Y4 ) ) ) ) ).

% less_eq_rat_def
thf(fact_2577_pred__def,axiom,
    ( pred
    = ( case_nat_nat @ zero_zero_nat
      @ ^ [X25: nat] : X25 ) ) ).

% pred_def
thf(fact_2578_rat__inverse__code,axiom,
    ! [P2: rat] :
      ( ( quotient_of @ ( inverse_inverse_rat @ P2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,B4: int] : ( if_Pro3027730157355071871nt_int @ ( A4 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ ( times_times_int @ ( sgn_sgn_int @ A4 ) @ B4 ) @ ( abs_abs_int @ A4 ) ) )
        @ ( quotient_of @ P2 ) ) ) ).

% rat_inverse_code
thf(fact_2579_bezw__0,axiom,
    ! [X: nat] :
      ( ( bezw @ X @ zero_zero_nat )
      = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) ).

% bezw_0
thf(fact_2580_quotient__of__number_I3_J,axiom,
    ! [K: num] :
      ( ( quotient_of @ ( numeral_numeral_rat @ K ) )
      = ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ one_one_int ) ) ).

% quotient_of_number(3)
thf(fact_2581_rat__one__code,axiom,
    ( ( quotient_of @ one_one_rat )
    = ( product_Pair_int_int @ one_one_int @ one_one_int ) ) ).

% rat_one_code
thf(fact_2582_rat__zero__code,axiom,
    ( ( quotient_of @ zero_zero_rat )
    = ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ).

% rat_zero_code
thf(fact_2583_quotient__of__number_I5_J,axiom,
    ! [K: num] :
      ( ( quotient_of @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) )
      = ( product_Pair_int_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) ).

% quotient_of_number(5)
thf(fact_2584_quotient__of__number_I4_J,axiom,
    ( ( quotient_of @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( product_Pair_int_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ) ) ).

% quotient_of_number(4)
thf(fact_2585_diff__rat__def,axiom,
    ( minus_minus_rat
    = ( ^ [Q4: rat,R5: rat] : ( plus_plus_rat @ Q4 @ ( uminus_uminus_rat @ R5 ) ) ) ) ).

% diff_rat_def
thf(fact_2586_divide__rat__def,axiom,
    ( divide_divide_rat
    = ( ^ [Q4: rat,R5: rat] : ( times_times_rat @ Q4 @ ( inverse_inverse_rat @ R5 ) ) ) ) ).

% divide_rat_def
thf(fact_2587_rat__less__code,axiom,
    ( ord_less_rat
    = ( ^ [P6: rat,Q4: rat] :
          ( produc4947309494688390418_int_o
          @ ^ [A4: int,C3: int] :
              ( produc4947309494688390418_int_o
              @ ^ [B4: int,D2: int] : ( ord_less_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ C3 @ B4 ) )
              @ ( quotient_of @ Q4 ) )
          @ ( quotient_of @ P6 ) ) ) ) ).

% rat_less_code
thf(fact_2588_rat__less__eq__code,axiom,
    ( ord_less_eq_rat
    = ( ^ [P6: rat,Q4: rat] :
          ( produc4947309494688390418_int_o
          @ ^ [A4: int,C3: int] :
              ( produc4947309494688390418_int_o
              @ ^ [B4: int,D2: int] : ( ord_less_eq_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ C3 @ B4 ) )
              @ ( quotient_of @ Q4 ) )
          @ ( quotient_of @ P6 ) ) ) ) ).

% rat_less_eq_code
thf(fact_2589_quotient__of__int,axiom,
    ! [A: int] :
      ( ( quotient_of @ ( of_int @ A ) )
      = ( product_Pair_int_int @ A @ one_one_int ) ) ).

% quotient_of_int
thf(fact_2590_rat__plus__code,axiom,
    ! [P2: rat,Q2: rat] :
      ( ( quotient_of @ ( plus_plus_rat @ P2 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ B4 @ C3 ) ) @ ( times_times_int @ C3 @ D2 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P2 ) ) ) ).

% rat_plus_code
thf(fact_2591_rat__minus__code,axiom,
    ! [P2: rat,Q2: rat] :
      ( ( quotient_of @ ( minus_minus_rat @ P2 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( minus_minus_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ B4 @ C3 ) ) @ ( times_times_int @ C3 @ D2 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P2 ) ) ) ).

% rat_minus_code
thf(fact_2592_normalize__denom__zero,axiom,
    ! [P2: int] :
      ( ( normalize @ ( product_Pair_int_int @ P2 @ zero_zero_int ) )
      = ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ).

% normalize_denom_zero
thf(fact_2593_normalize__crossproduct,axiom,
    ! [Q2: int,S: int,P2: int,R2: int] :
      ( ( Q2 != zero_zero_int )
     => ( ( S != zero_zero_int )
       => ( ( ( normalize @ ( product_Pair_int_int @ P2 @ Q2 ) )
            = ( normalize @ ( product_Pair_int_int @ R2 @ S ) ) )
         => ( ( times_times_int @ P2 @ S )
            = ( times_times_int @ R2 @ Q2 ) ) ) ) ) ).

% normalize_crossproduct
thf(fact_2594_rat__times__code,axiom,
    ! [P2: rat,Q2: rat] :
      ( ( quotient_of @ ( times_times_rat @ P2 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( times_times_int @ A4 @ B4 ) @ ( times_times_int @ C3 @ D2 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P2 ) ) ) ).

% rat_times_code
thf(fact_2595_rat__divide__code,axiom,
    ! [P2: rat,Q2: rat] :
      ( ( quotient_of @ ( divide_divide_rat @ P2 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ C3 @ B4 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P2 ) ) ) ).

% rat_divide_code
thf(fact_2596_Frct__code__post_I5_J,axiom,
    ! [K: num] :
      ( ( frct @ ( product_Pair_int_int @ one_one_int @ ( numeral_numeral_int @ K ) ) )
      = ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ K ) ) ) ).

% Frct_code_post(5)
thf(fact_2597_Frct__code__post_I6_J,axiom,
    ! [K: num,L2: num] :
      ( ( frct @ ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ ( numeral_numeral_int @ L2 ) ) )
      = ( divide_divide_rat @ ( numeral_numeral_rat @ K ) @ ( numeral_numeral_rat @ L2 ) ) ) ).

% Frct_code_post(6)
thf(fact_2598_prod__decode__aux_Oelims,axiom,
    ! [X: nat,Xa2: nat,Y2: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X @ Xa2 )
        = Y2 )
     => ( ( ( ord_less_eq_nat @ Xa2 @ X )
         => ( Y2
            = ( product_Pair_nat_nat @ Xa2 @ ( minus_minus_nat @ X @ Xa2 ) ) ) )
        & ( ~ ( ord_less_eq_nat @ Xa2 @ X )
         => ( Y2
            = ( nat_prod_decode_aux @ ( suc @ X ) @ ( minus_minus_nat @ Xa2 @ ( suc @ X ) ) ) ) ) ) ) ).

% prod_decode_aux.elims
thf(fact_2599_Frct__code__post_I3_J,axiom,
    ( ( frct @ ( product_Pair_int_int @ one_one_int @ one_one_int ) )
    = one_one_rat ) ).

% Frct_code_post(3)
thf(fact_2600_Frct__code__post_I4_J,axiom,
    ! [K: num] :
      ( ( frct @ ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ one_one_int ) )
      = ( numeral_numeral_rat @ K ) ) ).

% Frct_code_post(4)
thf(fact_2601_prod__decode__aux_Osimps,axiom,
    ( nat_prod_decode_aux
    = ( ^ [K3: nat,M6: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ M6 @ K3 ) @ ( product_Pair_nat_nat @ M6 @ ( minus_minus_nat @ K3 @ M6 ) ) @ ( nat_prod_decode_aux @ ( suc @ K3 ) @ ( minus_minus_nat @ M6 @ ( suc @ K3 ) ) ) ) ) ) ).

% prod_decode_aux.simps
thf(fact_2602_prod__decode__aux_Opelims,axiom,
    ! [X: nat,Xa2: nat,Y2: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X @ Xa2 ) )
       => ~ ( ( ( ( ord_less_eq_nat @ Xa2 @ X )
               => ( Y2
                  = ( product_Pair_nat_nat @ Xa2 @ ( minus_minus_nat @ X @ Xa2 ) ) ) )
              & ( ~ ( ord_less_eq_nat @ Xa2 @ X )
               => ( Y2
                  = ( nat_prod_decode_aux @ ( suc @ X ) @ ( minus_minus_nat @ Xa2 @ ( suc @ X ) ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X @ Xa2 ) ) ) ) ) ).

% prod_decode_aux.pelims
thf(fact_2603_Suc__0__div__numeral,axiom,
    ! [K: num] :
      ( ( divide_divide_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ K ) )
      = ( product_fst_nat_nat @ ( unique5055182867167087721od_nat @ one @ K ) ) ) ).

% Suc_0_div_numeral
thf(fact_2604_drop__bit__numeral__minus__bit1,axiom,
    ! [L2: num,K: num] :
      ( ( bit_se8568078237143864401it_int @ ( numeral_numeral_nat @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( bit_se8568078237143864401it_int @ ( pred_numeral @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ K ) ) ) ) ) ).

% drop_bit_numeral_minus_bit1
thf(fact_2605_drop__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se8568078237143864401it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% drop_bit_nonnegative_int_iff
thf(fact_2606_drop__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se8568078237143864401it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% drop_bit_negative_int_iff
thf(fact_2607_drop__bit__minus__one,axiom,
    ! [N: nat] :
      ( ( bit_se8568078237143864401it_int @ N @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% drop_bit_minus_one
thf(fact_2608_fst__divmod__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( product_fst_nat_nat @ ( divmod_nat @ M @ N ) )
      = ( divide_divide_nat @ M @ N ) ) ).

% fst_divmod_nat
thf(fact_2609_drop__bit__Suc__minus__bit0,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se8568078237143864401it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ K ) ) ) )
      = ( bit_se8568078237143864401it_int @ N @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) ) ).

% drop_bit_Suc_minus_bit0
thf(fact_2610_drop__bit__numeral__minus__bit0,axiom,
    ! [L2: num,K: num] :
      ( ( bit_se8568078237143864401it_int @ ( numeral_numeral_nat @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ K ) ) ) )
      = ( bit_se8568078237143864401it_int @ ( pred_numeral @ L2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) ) ).

% drop_bit_numeral_minus_bit0
thf(fact_2611_drop__bit__Suc__minus__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se8568078237143864401it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( bit_se8568078237143864401it_int @ N @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ K ) ) ) ) ) ).

% drop_bit_Suc_minus_bit1
thf(fact_2612_drop__bit__push__bit__int,axiom,
    ! [M: nat,N: nat,K: int] :
      ( ( bit_se8568078237143864401it_int @ M @ ( bit_se545348938243370406it_int @ N @ K ) )
      = ( bit_se8568078237143864401it_int @ ( minus_minus_nat @ M @ N ) @ ( bit_se545348938243370406it_int @ ( minus_minus_nat @ N @ M ) @ K ) ) ) ).

% drop_bit_push_bit_int
thf(fact_2613_drop__bit__int__def,axiom,
    ( bit_se8568078237143864401it_int
    = ( ^ [N2: nat,K3: int] : ( divide_divide_int @ K3 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% drop_bit_int_def
thf(fact_2614_Suc__0__mod__numeral,axiom,
    ! [K: num] :
      ( ( modulo_modulo_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ K ) )
      = ( product_snd_nat_nat @ ( unique5055182867167087721od_nat @ one @ K ) ) ) ).

% Suc_0_mod_numeral
thf(fact_2615_finite__enumerate,axiom,
    ! [S3: set_nat] :
      ( ( finite_finite_nat @ S3 )
     => ? [R3: nat > nat] :
          ( ( strict1292158309912662752at_nat @ R3 @ ( set_ord_lessThan_nat @ ( finite_card_nat @ S3 ) ) )
          & ! [N7: nat] :
              ( ( ord_less_nat @ N7 @ ( finite_card_nat @ S3 ) )
             => ( member_nat @ ( R3 @ N7 ) @ S3 ) ) ) ) ).

% finite_enumerate
thf(fact_2616_drop__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se8570568707652914677it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( zero_n2687167440665602831ol_nat @ ( N = zero_zero_nat ) ) ) ).

% drop_bit_of_Suc_0
thf(fact_2617_drop__bit__nat__eq,axiom,
    ! [N: nat,K: int] :
      ( ( bit_se8570568707652914677it_nat @ N @ ( nat2 @ K ) )
      = ( nat2 @ ( bit_se8568078237143864401it_int @ N @ K ) ) ) ).

% drop_bit_nat_eq
thf(fact_2618_drop__bit__nat__def,axiom,
    ( bit_se8570568707652914677it_nat
    = ( ^ [N2: nat,M6: nat] : ( divide_divide_nat @ M6 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) ) ).

% drop_bit_nat_def
thf(fact_2619_rat__sgn__code,axiom,
    ! [P2: rat] :
      ( ( quotient_of @ ( sgn_sgn_rat @ P2 ) )
      = ( product_Pair_int_int @ ( sgn_sgn_int @ ( product_fst_int_int @ ( quotient_of @ P2 ) ) ) @ one_one_int ) ) ).

% rat_sgn_code
thf(fact_2620_bezw__non__0,axiom,
    ! [Y2: nat,X: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Y2 )
     => ( ( bezw @ X @ Y2 )
        = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Y2 @ ( modulo_modulo_nat @ X @ Y2 ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Y2 @ ( modulo_modulo_nat @ X @ Y2 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Y2 @ ( modulo_modulo_nat @ X @ Y2 ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X @ Y2 ) ) ) ) ) ) ) ).

% bezw_non_0
thf(fact_2621_bezw_Oelims,axiom,
    ! [X: nat,Xa2: nat,Y2: product_prod_int_int] :
      ( ( ( bezw @ X @ Xa2 )
        = Y2 )
     => ( ( ( Xa2 = zero_zero_nat )
         => ( Y2
            = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) )
        & ( ( Xa2 != zero_zero_nat )
         => ( Y2
            = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Xa2 @ ( modulo_modulo_nat @ X @ Xa2 ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Xa2 @ ( modulo_modulo_nat @ X @ Xa2 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Xa2 @ ( modulo_modulo_nat @ X @ Xa2 ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X @ Xa2 ) ) ) ) ) ) ) ) ) ).

% bezw.elims
thf(fact_2622_bezw_Osimps,axiom,
    ( bezw
    = ( ^ [X4: nat,Y4: nat] : ( if_Pro3027730157355071871nt_int @ ( Y4 = zero_zero_nat ) @ ( product_Pair_int_int @ one_one_int @ zero_zero_int ) @ ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Y4 @ ( modulo_modulo_nat @ X4 @ Y4 ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Y4 @ ( modulo_modulo_nat @ X4 @ Y4 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Y4 @ ( modulo_modulo_nat @ X4 @ Y4 ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X4 @ Y4 ) ) ) ) ) ) ) ) ).

% bezw.simps
thf(fact_2623_bezw_Opelims,axiom,
    ! [X: nat,Xa2: nat,Y2: product_prod_int_int] :
      ( ( ( bezw @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P4275260045618599050at_nat @ bezw_rel @ ( product_Pair_nat_nat @ X @ Xa2 ) )
       => ~ ( ( ( ( Xa2 = zero_zero_nat )
               => ( Y2
                  = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) )
              & ( ( Xa2 != zero_zero_nat )
               => ( Y2
                  = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Xa2 @ ( modulo_modulo_nat @ X @ Xa2 ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Xa2 @ ( modulo_modulo_nat @ X @ Xa2 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Xa2 @ ( modulo_modulo_nat @ X @ Xa2 ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X @ Xa2 ) ) ) ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ bezw_rel @ ( product_Pair_nat_nat @ X @ Xa2 ) ) ) ) ) ).

% bezw.pelims
thf(fact_2624_one__mod__minus__numeral,axiom,
    ! [N: num] :
      ( ( modulo_modulo_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( adjust_mod @ ( numeral_numeral_int @ N ) @ ( product_snd_int_int @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ) ).

% one_mod_minus_numeral
thf(fact_2625_minus__numeral__mod__numeral,axiom,
    ! [M: num,N: num] :
      ( ( modulo_modulo_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( adjust_mod @ ( numeral_numeral_int @ N ) @ ( product_snd_int_int @ ( unique5052692396658037445od_int @ M @ N ) ) ) ) ).

% minus_numeral_mod_numeral
thf(fact_2626_numeral__mod__minus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( modulo_modulo_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( adjust_mod @ ( numeral_numeral_int @ N ) @ ( product_snd_int_int @ ( unique5052692396658037445od_int @ M @ N ) ) ) ) ) ).

% numeral_mod_minus_numeral
thf(fact_2627_minus__one__mod__numeral,axiom,
    ! [N: num] :
      ( ( modulo_modulo_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ N ) )
      = ( adjust_mod @ ( numeral_numeral_int @ N ) @ ( product_snd_int_int @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ).

% minus_one_mod_numeral
thf(fact_2628_normalize__def,axiom,
    ( normalize
    = ( ^ [P6: product_prod_int_int] :
          ( if_Pro3027730157355071871nt_int @ ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ P6 ) ) @ ( product_Pair_int_int @ ( divide_divide_int @ ( product_fst_int_int @ P6 ) @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) @ ( divide_divide_int @ ( product_snd_int_int @ P6 ) @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) )
          @ ( if_Pro3027730157355071871nt_int
            @ ( ( product_snd_int_int @ P6 )
              = zero_zero_int )
            @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
            @ ( product_Pair_int_int @ ( divide_divide_int @ ( product_fst_int_int @ P6 ) @ ( uminus_uminus_int @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) ) @ ( divide_divide_int @ ( product_snd_int_int @ P6 ) @ ( uminus_uminus_int @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) ) ) ) ) ) ) ).

% normalize_def
thf(fact_2629_gcd__1__int,axiom,
    ! [M: int] :
      ( ( gcd_gcd_int @ M @ one_one_int )
      = one_one_int ) ).

% gcd_1_int
thf(fact_2630_gcd__neg__numeral__1__int,axiom,
    ! [N: num,X: int] :
      ( ( gcd_gcd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ X )
      = ( gcd_gcd_int @ ( numeral_numeral_int @ N ) @ X ) ) ).

% gcd_neg_numeral_1_int
thf(fact_2631_gcd__neg__numeral__2__int,axiom,
    ! [X: int,N: num] :
      ( ( gcd_gcd_int @ X @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( gcd_gcd_int @ X @ ( numeral_numeral_int @ N ) ) ) ).

% gcd_neg_numeral_2_int
thf(fact_2632_gcd__ge__0__int,axiom,
    ! [X: int,Y2: int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_gcd_int @ X @ Y2 ) ) ).

% gcd_ge_0_int
thf(fact_2633_bezout__int,axiom,
    ! [X: int,Y2: int] :
    ? [U2: int,V2: int] :
      ( ( plus_plus_int @ ( times_times_int @ U2 @ X ) @ ( times_times_int @ V2 @ Y2 ) )
      = ( gcd_gcd_int @ X @ Y2 ) ) ).

% bezout_int
thf(fact_2634_gcd__mult__distrib__int,axiom,
    ! [K: int,M: int,N: int] :
      ( ( times_times_int @ ( abs_abs_int @ K ) @ ( gcd_gcd_int @ M @ N ) )
      = ( gcd_gcd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ N ) ) ) ).

% gcd_mult_distrib_int
thf(fact_2635_gcd__le1__int,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ord_less_eq_int @ ( gcd_gcd_int @ A @ B ) @ A ) ) ).

% gcd_le1_int
thf(fact_2636_gcd__le2__int,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ord_less_eq_int @ ( gcd_gcd_int @ A @ B ) @ B ) ) ).

% gcd_le2_int
thf(fact_2637_gcd__cases__int,axiom,
    ! [X: int,Y2: int,P: int > $o] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ X )
       => ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
         => ( P @ ( gcd_gcd_int @ X @ Y2 ) ) ) )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X )
         => ( ( ord_less_eq_int @ Y2 @ zero_zero_int )
           => ( P @ ( gcd_gcd_int @ X @ ( uminus_uminus_int @ Y2 ) ) ) ) )
       => ( ( ( ord_less_eq_int @ X @ zero_zero_int )
           => ( ( ord_less_eq_int @ zero_zero_int @ Y2 )
             => ( P @ ( gcd_gcd_int @ ( uminus_uminus_int @ X ) @ Y2 ) ) ) )
         => ( ( ( ord_less_eq_int @ X @ zero_zero_int )
             => ( ( ord_less_eq_int @ Y2 @ zero_zero_int )
               => ( P @ ( gcd_gcd_int @ ( uminus_uminus_int @ X ) @ ( uminus_uminus_int @ Y2 ) ) ) ) )
           => ( P @ ( gcd_gcd_int @ X @ Y2 ) ) ) ) ) ) ).

% gcd_cases_int
thf(fact_2638_gcd__unique__int,axiom,
    ! [D: int,A: int,B: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ D )
        & ( dvd_dvd_int @ D @ A )
        & ( dvd_dvd_int @ D @ B )
        & ! [E3: int] :
            ( ( ( dvd_dvd_int @ E3 @ A )
              & ( dvd_dvd_int @ E3 @ B ) )
           => ( dvd_dvd_int @ E3 @ D ) ) )
      = ( D
        = ( gcd_gcd_int @ A @ B ) ) ) ).

% gcd_unique_int
thf(fact_2639_gcd__1__nat,axiom,
    ! [M: nat] :
      ( ( gcd_gcd_nat @ M @ one_one_nat )
      = one_one_nat ) ).

% gcd_1_nat
thf(fact_2640_gcd__Suc__0,axiom,
    ! [M: nat] :
      ( ( gcd_gcd_nat @ M @ ( suc @ zero_zero_nat ) )
      = ( suc @ zero_zero_nat ) ) ).

% gcd_Suc_0
thf(fact_2641_gcd__pos__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( gcd_gcd_nat @ M @ N ) )
      = ( ( M != zero_zero_nat )
        | ( N != zero_zero_nat ) ) ) ).

% gcd_pos_nat
thf(fact_2642_gcd__mult__distrib__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( gcd_gcd_nat @ M @ N ) )
      = ( gcd_gcd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% gcd_mult_distrib_nat
thf(fact_2643_gcd__le2__nat,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ord_less_eq_nat @ ( gcd_gcd_nat @ A @ B ) @ B ) ) ).

% gcd_le2_nat
thf(fact_2644_gcd__le1__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ord_less_eq_nat @ ( gcd_gcd_nat @ A @ B ) @ A ) ) ).

% gcd_le1_nat
thf(fact_2645_gcd__diff2__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( gcd_gcd_nat @ ( minus_minus_nat @ N @ M ) @ N )
        = ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_diff2_nat
thf(fact_2646_gcd__diff1__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( gcd_gcd_nat @ ( minus_minus_nat @ M @ N ) @ N )
        = ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_diff1_nat
thf(fact_2647_bezout__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ? [X5: nat,Y3: nat] :
          ( ( times_times_nat @ A @ X5 )
          = ( plus_plus_nat @ ( times_times_nat @ B @ Y3 ) @ ( gcd_gcd_nat @ A @ B ) ) ) ) ).

% bezout_nat
thf(fact_2648_bezout__gcd__nat_H,axiom,
    ! [B: nat,A: nat] :
    ? [X5: nat,Y3: nat] :
      ( ( ( ord_less_eq_nat @ ( times_times_nat @ B @ Y3 ) @ ( times_times_nat @ A @ X5 ) )
        & ( ( minus_minus_nat @ ( times_times_nat @ A @ X5 ) @ ( times_times_nat @ B @ Y3 ) )
          = ( gcd_gcd_nat @ A @ B ) ) )
      | ( ( ord_less_eq_nat @ ( times_times_nat @ A @ Y3 ) @ ( times_times_nat @ B @ X5 ) )
        & ( ( minus_minus_nat @ ( times_times_nat @ B @ X5 ) @ ( times_times_nat @ A @ Y3 ) )
          = ( gcd_gcd_nat @ A @ B ) ) ) ) ).

% bezout_gcd_nat'
thf(fact_2649_bezw__aux,axiom,
    ! [X: nat,Y2: nat] :
      ( ( semiri1314217659103216013at_int @ ( gcd_gcd_nat @ X @ Y2 ) )
      = ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ ( bezw @ X @ Y2 ) ) @ ( semiri1314217659103216013at_int @ X ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ X @ Y2 ) ) @ ( semiri1314217659103216013at_int @ Y2 ) ) ) ) ).

% bezw_aux
thf(fact_2650_nat__descend__induct,axiom,
    ! [N: nat,P: nat > $o,M: nat] :
      ( ! [K2: nat] :
          ( ( ord_less_nat @ N @ K2 )
         => ( P @ K2 ) )
     => ( ! [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
           => ( ! [I: nat] :
                  ( ( ord_less_nat @ K2 @ I )
                 => ( P @ I ) )
             => ( P @ K2 ) ) )
       => ( P @ M ) ) ) ).

% nat_descend_induct
thf(fact_2651_card__greaterThanLessThan__int,axiom,
    ! [L2: int,U: int] :
      ( ( finite_card_int @ ( set_or5832277885323065728an_int @ L2 @ U ) )
      = ( nat2 @ ( minus_minus_int @ U @ ( plus_plus_int @ L2 @ one_one_int ) ) ) ) ).

% card_greaterThanLessThan_int
thf(fact_2652_xor__minus__numerals_I2_J,axiom,
    ! [K: int,N: num] :
      ( ( bit_se6526347334894502574or_int @ K @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( bit_se6526347334894502574or_int @ K @ ( neg_numeral_sub_int @ N @ one ) ) ) ) ).

% xor_minus_numerals(2)
thf(fact_2653_xor__minus__numerals_I1_J,axiom,
    ! [N: num,K: int] :
      ( ( bit_se6526347334894502574or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ K )
      = ( bit_ri7919022796975470100ot_int @ ( bit_se6526347334894502574or_int @ ( neg_numeral_sub_int @ N @ one ) @ K ) ) ) ).

% xor_minus_numerals(1)
thf(fact_2654_atLeastPlusOneLessThan__greaterThanLessThan__int,axiom,
    ! [L2: int,U: int] :
      ( ( set_or4662586982721622107an_int @ ( plus_plus_int @ L2 @ one_one_int ) @ U )
      = ( set_or5832277885323065728an_int @ L2 @ U ) ) ).

% atLeastPlusOneLessThan_greaterThanLessThan_int
thf(fact_2655_sub__BitM__One__eq,axiom,
    ! [N: num] :
      ( ( neg_numeral_sub_int @ ( bitM @ N ) @ one )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( neg_numeral_sub_int @ N @ one ) ) ) ).

% sub_BitM_One_eq
thf(fact_2656_greaterThanLessThan__upto,axiom,
    ( set_or5832277885323065728an_int
    = ( ^ [I4: int,J3: int] : ( set_int2 @ ( upto @ ( plus_plus_int @ I4 @ one_one_int ) @ ( minus_minus_int @ J3 @ one_one_int ) ) ) ) ) ).

% greaterThanLessThan_upto
thf(fact_2657_card__greaterThanLessThan,axiom,
    ! [L2: nat,U: nat] :
      ( ( finite_card_nat @ ( set_or5834768355832116004an_nat @ L2 @ U ) )
      = ( minus_minus_nat @ U @ ( suc @ L2 ) ) ) ).

% card_greaterThanLessThan
thf(fact_2658_atLeastSucLessThan__greaterThanLessThan,axiom,
    ! [L2: nat,U: nat] :
      ( ( set_or4665077453230672383an_nat @ ( suc @ L2 ) @ U )
      = ( set_or5834768355832116004an_nat @ L2 @ U ) ) ).

% atLeastSucLessThan_greaterThanLessThan
thf(fact_2659_tanh__real__bounds,axiom,
    ! [X: real] : ( member_real @ ( tanh_real @ X ) @ ( set_or1633881224788618240n_real @ ( uminus_uminus_real @ one_one_real ) @ one_one_real ) ) ).

% tanh_real_bounds
thf(fact_2660_nat__of__integer__non__positive,axiom,
    ! [K: code_integer] :
      ( ( ord_le3102999989581377725nteger @ K @ zero_z3403309356797280102nteger )
     => ( ( code_nat_of_integer @ K )
        = zero_zero_nat ) ) ).

% nat_of_integer_non_positive
thf(fact_2661_Suc__funpow,axiom,
    ! [N: nat] :
      ( ( compow_nat_nat @ N @ suc )
      = ( plus_plus_nat @ N ) ) ).

% Suc_funpow
thf(fact_2662_nat__of__integer__code__post_I3_J,axiom,
    ! [K: num] :
      ( ( code_nat_of_integer @ ( numera6620942414471956472nteger @ K ) )
      = ( numeral_numeral_nat @ K ) ) ).

% nat_of_integer_code_post(3)
thf(fact_2663_nat__of__integer__code__post_I2_J,axiom,
    ( ( code_nat_of_integer @ one_one_Code_integer )
    = one_one_nat ) ).

% nat_of_integer_code_post(2)
thf(fact_2664_nat__of__integer__code,axiom,
    ( code_nat_of_integer
    = ( ^ [K3: code_integer] :
          ( if_nat @ ( ord_le3102999989581377725nteger @ K3 @ zero_z3403309356797280102nteger ) @ zero_zero_nat
          @ ( produc1555791787009142072er_nat
            @ ^ [L: code_integer,J3: code_integer] : ( if_nat @ ( J3 = zero_z3403309356797280102nteger ) @ ( plus_plus_nat @ ( code_nat_of_integer @ L ) @ ( code_nat_of_integer @ L ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( code_nat_of_integer @ L ) @ ( code_nat_of_integer @ L ) ) @ one_one_nat ) )
            @ ( code_divmod_integer @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% nat_of_integer_code
thf(fact_2665_divmod__integer__eq__cases,axiom,
    ( code_divmod_integer
    = ( ^ [K3: code_integer,L: code_integer] :
          ( if_Pro6119634080678213985nteger @ ( K3 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
          @ ( if_Pro6119634080678213985nteger @ ( L = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ K3 )
            @ ( comp_C1593894019821074884nteger @ ( comp_C8797469213163452608nteger @ produc6499014454317279255nteger @ times_3573771949741848930nteger ) @ sgn_sgn_Code_integer @ L
              @ ( if_Pro6119634080678213985nteger
                @ ( ( sgn_sgn_Code_integer @ K3 )
                  = ( sgn_sgn_Code_integer @ L ) )
                @ ( code_divmod_abs @ K3 @ L )
                @ ( produc6916734918728496179nteger
                  @ ^ [R5: code_integer,S5: code_integer] : ( if_Pro6119634080678213985nteger @ ( S5 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R5 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R5 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ L ) @ S5 ) ) )
                  @ ( code_divmod_abs @ K3 @ L ) ) ) ) ) ) ) ) ).

% divmod_integer_eq_cases
thf(fact_2666_max__nat_Osemilattice__neutr__order__axioms,axiom,
    ( semila1623282765462674594er_nat @ ord_max_nat @ zero_zero_nat
    @ ^ [X4: nat,Y4: nat] : ( ord_less_eq_nat @ Y4 @ X4 )
    @ ^ [X4: nat,Y4: nat] : ( ord_less_nat @ Y4 @ X4 ) ) ).

% max_nat.semilattice_neutr_order_axioms
thf(fact_2667_int__of__integer__code,axiom,
    ( code_int_of_integer
    = ( ^ [K3: code_integer] :
          ( if_int @ ( ord_le6747313008572928689nteger @ K3 @ zero_z3403309356797280102nteger ) @ ( uminus_uminus_int @ ( code_int_of_integer @ ( uminus1351360451143612070nteger @ K3 ) ) )
          @ ( if_int @ ( K3 = zero_z3403309356797280102nteger ) @ zero_zero_int
            @ ( produc1553301316500091796er_int
              @ ^ [L: code_integer,J3: code_integer] : ( if_int @ ( J3 = zero_z3403309356797280102nteger ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( code_int_of_integer @ L ) ) @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( code_int_of_integer @ L ) ) @ one_one_int ) )
              @ ( code_divmod_integer @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% int_of_integer_code
thf(fact_2668_int__of__integer__numeral,axiom,
    ! [K: num] :
      ( ( code_int_of_integer @ ( numera6620942414471956472nteger @ K ) )
      = ( numeral_numeral_int @ K ) ) ).

% int_of_integer_numeral
thf(fact_2669_plus__integer_Orep__eq,axiom,
    ! [X: code_integer,Xa2: code_integer] :
      ( ( code_int_of_integer @ ( plus_p5714425477246183910nteger @ X @ Xa2 ) )
      = ( plus_plus_int @ ( code_int_of_integer @ X ) @ ( code_int_of_integer @ Xa2 ) ) ) ).

% plus_integer.rep_eq
thf(fact_2670_times__integer_Orep__eq,axiom,
    ! [X: code_integer,Xa2: code_integer] :
      ( ( code_int_of_integer @ ( times_3573771949741848930nteger @ X @ Xa2 ) )
      = ( times_times_int @ ( code_int_of_integer @ X ) @ ( code_int_of_integer @ Xa2 ) ) ) ).

% times_integer.rep_eq
thf(fact_2671_one__integer_Orep__eq,axiom,
    ( ( code_int_of_integer @ one_one_Code_integer )
    = one_one_int ) ).

% one_integer.rep_eq
thf(fact_2672_card_Ocomp__fun__commute__on,axiom,
    ( ( comp_nat_nat_nat @ suc @ suc )
    = ( comp_nat_nat_nat @ suc @ suc ) ) ).

% card.comp_fun_commute_on
thf(fact_2673_less__eq__integer_Orep__eq,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [X4: code_integer,Xa4: code_integer] : ( ord_less_eq_int @ ( code_int_of_integer @ X4 ) @ ( code_int_of_integer @ Xa4 ) ) ) ) ).

% less_eq_integer.rep_eq
thf(fact_2674_integer__less__eq__iff,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [K3: code_integer,L: code_integer] : ( ord_less_eq_int @ ( code_int_of_integer @ K3 ) @ ( code_int_of_integer @ L ) ) ) ) ).

% integer_less_eq_iff
thf(fact_2675_Code__Numeral_Onegative__def,axiom,
    ( code_negative
    = ( comp_C3531382070062128313er_num @ uminus1351360451143612070nteger @ numera6620942414471956472nteger ) ) ).

% Code_Numeral.negative_def
thf(fact_2676_Code__Target__Int_Onegative__def,axiom,
    ( code_Target_negative
    = ( comp_int_int_num @ uminus_uminus_int @ numeral_numeral_int ) ) ).

% Code_Target_Int.negative_def
thf(fact_2677_times__int_Oabs__eq,axiom,
    ! [Xa2: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( times_times_int @ ( abs_Integ @ Xa2 ) @ ( abs_Integ @ X ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X4: nat,Y4: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U3: nat,V4: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X4 @ U3 ) @ ( times_times_nat @ Y4 @ V4 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X4 @ V4 ) @ ( times_times_nat @ Y4 @ U3 ) ) ) )
          @ Xa2
          @ X ) ) ) ).

% times_int.abs_eq
thf(fact_2678_bij__betw__Suc,axiom,
    ! [M7: set_nat,N3: set_nat] :
      ( ( bij_betw_nat_nat @ suc @ M7 @ N3 )
      = ( ( image_nat_nat @ suc @ M7 )
        = N3 ) ) ).

% bij_betw_Suc
thf(fact_2679_image__Suc__atLeastAtMost,axiom,
    ! [I2: nat,J: nat] :
      ( ( image_nat_nat @ suc @ ( set_or1269000886237332187st_nat @ I2 @ J ) )
      = ( set_or1269000886237332187st_nat @ ( suc @ I2 ) @ ( suc @ J ) ) ) ).

% image_Suc_atLeastAtMost
thf(fact_2680_image__Suc__atLeastLessThan,axiom,
    ! [I2: nat,J: nat] :
      ( ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ I2 @ J ) )
      = ( set_or4665077453230672383an_nat @ ( suc @ I2 ) @ ( suc @ J ) ) ) ).

% image_Suc_atLeastLessThan
thf(fact_2681_zero__notin__Suc__image,axiom,
    ! [A2: set_nat] :
      ~ ( member_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ A2 ) ) ).

% zero_notin_Suc_image
thf(fact_2682_image__Suc__lessThan,axiom,
    ! [N: nat] :
      ( ( image_nat_nat @ suc @ ( set_ord_lessThan_nat @ N ) )
      = ( set_or1269000886237332187st_nat @ one_one_nat @ N ) ) ).

% image_Suc_lessThan
thf(fact_2683_image__Suc__atMost,axiom,
    ! [N: nat] :
      ( ( image_nat_nat @ suc @ ( set_ord_atMost_nat @ N ) )
      = ( set_or1269000886237332187st_nat @ one_one_nat @ ( suc @ N ) ) ) ).

% image_Suc_atMost
thf(fact_2684_atLeast0__atMost__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% atLeast0_atMost_Suc_eq_insert_0
thf(fact_2685_atLeast0__lessThan__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% atLeast0_lessThan_Suc_eq_insert_0
thf(fact_2686_lessThan__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% lessThan_Suc_eq_insert_0
thf(fact_2687_atMost__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_atMost_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% atMost_Suc_eq_insert_0
thf(fact_2688_one__int__def,axiom,
    ( one_one_int
    = ( abs_Integ @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) ) ) ).

% one_int_def
thf(fact_2689_less__int_Oabs__eq,axiom,
    ! [Xa2: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( ord_less_int @ ( abs_Integ @ Xa2 ) @ ( abs_Integ @ X ) )
      = ( produc8739625826339149834_nat_o
        @ ^ [X4: nat,Y4: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U3: nat,V4: nat] : ( ord_less_nat @ ( plus_plus_nat @ X4 @ V4 ) @ ( plus_plus_nat @ U3 @ Y4 ) ) )
        @ Xa2
        @ X ) ) ).

% less_int.abs_eq
thf(fact_2690_less__eq__int_Oabs__eq,axiom,
    ! [Xa2: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( ord_less_eq_int @ ( abs_Integ @ Xa2 ) @ ( abs_Integ @ X ) )
      = ( produc8739625826339149834_nat_o
        @ ^ [X4: nat,Y4: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U3: nat,V4: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X4 @ V4 ) @ ( plus_plus_nat @ U3 @ Y4 ) ) )
        @ Xa2
        @ X ) ) ).

% less_eq_int.abs_eq
thf(fact_2691_plus__int_Oabs__eq,axiom,
    ! [Xa2: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( plus_plus_int @ ( abs_Integ @ Xa2 ) @ ( abs_Integ @ X ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X4: nat,Y4: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U3: nat,V4: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ U3 ) @ ( plus_plus_nat @ Y4 @ V4 ) ) )
          @ Xa2
          @ X ) ) ) ).

% plus_int.abs_eq
thf(fact_2692_minus__int_Oabs__eq,axiom,
    ! [Xa2: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( minus_minus_int @ ( abs_Integ @ Xa2 ) @ ( abs_Integ @ X ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X4: nat,Y4: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U3: nat,V4: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ V4 ) @ ( plus_plus_nat @ Y4 @ U3 ) ) )
          @ Xa2
          @ X ) ) ) ).

% minus_int.abs_eq
thf(fact_2693_image__atLeastZeroLessThan__int,axiom,
    ! [U: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ U )
     => ( ( set_or4662586982721622107an_int @ zero_zero_int @ U )
        = ( image_nat_int @ semiri1314217659103216013at_int @ ( set_ord_lessThan_nat @ ( nat2 @ U ) ) ) ) ) ).

% image_atLeastZeroLessThan_int
thf(fact_2694_image__minus__const__atLeastLessThan__nat,axiom,
    ! [C: nat,Y2: nat,X: nat] :
      ( ( ( ord_less_nat @ C @ Y2 )
       => ( ( image_nat_nat
            @ ^ [I4: nat] : ( minus_minus_nat @ I4 @ C )
            @ ( set_or4665077453230672383an_nat @ X @ Y2 ) )
          = ( set_or4665077453230672383an_nat @ ( minus_minus_nat @ X @ C ) @ ( minus_minus_nat @ Y2 @ C ) ) ) )
      & ( ~ ( ord_less_nat @ C @ Y2 )
       => ( ( ( ord_less_nat @ X @ Y2 )
           => ( ( image_nat_nat
                @ ^ [I4: nat] : ( minus_minus_nat @ I4 @ C )
                @ ( set_or4665077453230672383an_nat @ X @ Y2 ) )
              = ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) )
          & ( ~ ( ord_less_nat @ X @ Y2 )
           => ( ( image_nat_nat
                @ ^ [I4: nat] : ( minus_minus_nat @ I4 @ C )
                @ ( set_or4665077453230672383an_nat @ X @ Y2 ) )
              = bot_bot_set_nat ) ) ) ) ) ).

% image_minus_const_atLeastLessThan_nat
thf(fact_2695_suminf__eq__SUP__real,axiom,
    ! [X8: nat > real] :
      ( ( summable_real @ X8 )
     => ( ! [I3: nat] : ( ord_less_eq_real @ zero_zero_real @ ( X8 @ I3 ) )
       => ( ( suminf_real @ X8 )
          = ( comple1385675409528146559p_real
            @ ( image_nat_real
              @ ^ [I4: nat] : ( groups6591440286371151544t_real @ X8 @ ( set_ord_lessThan_nat @ I4 ) )
              @ top_top_set_nat ) ) ) ) ) ).

% suminf_eq_SUP_real
thf(fact_2696_Inf__real__def,axiom,
    ( comple4887499456419720421f_real
    = ( ^ [X2: set_real] : ( uminus_uminus_real @ ( comple1385675409528146559p_real @ ( image_real_real @ uminus_uminus_real @ X2 ) ) ) ) ) ).

% Inf_real_def
thf(fact_2697_finite__int__iff__bounded__le,axiom,
    ( finite_finite_int
    = ( ^ [S4: set_int] :
        ? [K3: int] : ( ord_less_eq_set_int @ ( image_int_int @ abs_abs_int @ S4 ) @ ( set_ord_atMost_int @ K3 ) ) ) ) ).

% finite_int_iff_bounded_le
thf(fact_2698_finite__int__iff__bounded,axiom,
    ( finite_finite_int
    = ( ^ [S4: set_int] :
        ? [K3: int] : ( ord_less_eq_set_int @ ( image_int_int @ abs_abs_int @ S4 ) @ ( set_ord_lessThan_int @ K3 ) ) ) ) ).

% finite_int_iff_bounded
thf(fact_2699_image__add__int__atLeastLessThan,axiom,
    ! [L2: int,U: int] :
      ( ( image_int_int
        @ ^ [X4: int] : ( plus_plus_int @ X4 @ L2 )
        @ ( set_or4662586982721622107an_int @ zero_zero_int @ ( minus_minus_int @ U @ L2 ) ) )
      = ( set_or4662586982721622107an_int @ L2 @ U ) ) ).

% image_add_int_atLeastLessThan
thf(fact_2700_range__mod,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( image_nat_nat
          @ ^ [M6: nat] : ( modulo_modulo_nat @ M6 @ N )
          @ top_top_set_nat )
        = ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% range_mod
thf(fact_2701_UNIV__nat__eq,axiom,
    ( top_top_set_nat
    = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ top_top_set_nat ) ) ) ).

% UNIV_nat_eq
thf(fact_2702_card__UNIV__unit,axiom,
    ( ( finite410649719033368117t_unit @ top_to1996260823553986621t_unit )
    = one_one_nat ) ).

% card_UNIV_unit
thf(fact_2703_card__UNIV__bool,axiom,
    ( ( finite_card_o @ top_top_set_o )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% card_UNIV_bool
thf(fact_2704_range__mult,axiom,
    ! [A: real] :
      ( ( ( A = zero_zero_real )
       => ( ( image_real_real @ ( times_times_real @ A ) @ top_top_set_real )
          = ( insert_real @ zero_zero_real @ bot_bot_set_real ) ) )
      & ( ( A != zero_zero_real )
       => ( ( image_real_real @ ( times_times_real @ A ) @ top_top_set_real )
          = top_top_set_real ) ) ) ).

% range_mult
thf(fact_2705_root__def,axiom,
    ( root
    = ( ^ [N2: nat,X4: real] :
          ( if_real @ ( N2 = zero_zero_nat ) @ zero_zero_real
          @ ( the_in5290026491893676941l_real @ top_top_set_real
            @ ^ [Y4: real] : ( times_times_real @ ( sgn_sgn_real @ Y4 ) @ ( power_power_real @ ( abs_abs_real @ Y4 ) @ N2 ) )
            @ X4 ) ) ) ) ).

% root_def
thf(fact_2706_card__UNIV__char,axiom,
    ( ( finite_card_char @ top_top_set_char )
    = ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% card_UNIV_char
thf(fact_2707_UNIV__char__of__nat,axiom,
    ( top_top_set_char
    = ( image_nat_char @ unique3096191561947761185of_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ).

% UNIV_char_of_nat
thf(fact_2708_sup__nat__def,axiom,
    sup_sup_nat = ord_max_nat ).

% sup_nat_def
thf(fact_2709_sup__enat__def,axiom,
    sup_su3973961784419623482d_enat = ord_ma741700101516333627d_enat ).

% sup_enat_def
thf(fact_2710_atLeastLessThan__add__Un,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( set_or4665077453230672383an_nat @ I2 @ ( plus_plus_nat @ J @ K ) )
        = ( sup_sup_set_nat @ ( set_or4665077453230672383an_nat @ I2 @ J ) @ ( set_or4665077453230672383an_nat @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).

% atLeastLessThan_add_Un
thf(fact_2711_nat__of__char__less__256,axiom,
    ! [C: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C ) @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% nat_of_char_less_256
thf(fact_2712_range__nat__of__char,axiom,
    ( ( image_char_nat @ comm_s629917340098488124ar_nat @ top_top_set_char )
    = ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% range_nat_of_char
thf(fact_2713_integer__of__char__code,axiom,
    ! [B0: $o,B1: $o,B22: $o,B32: $o,B42: $o,B52: $o,B62: $o,B7: $o] :
      ( ( integer_of_char @ ( char2 @ B0 @ B1 @ B22 @ B32 @ B42 @ B52 @ B62 @ B7 ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( zero_n356916108424825756nteger @ B7 ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B62 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B52 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B42 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B32 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B22 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B1 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B0 ) ) ) ).

% integer_of_char_code
thf(fact_2714_String_Ochar__of__ascii__of,axiom,
    ! [C: char] :
      ( ( comm_s629917340098488124ar_nat @ ( ascii_of @ C ) )
      = ( bit_se2925701944663578781it_nat @ ( numeral_numeral_nat @ ( bit1 @ ( bit1 @ one ) ) ) @ ( comm_s629917340098488124ar_nat @ C ) ) ) ).

% String.char_of_ascii_of
thf(fact_2715_DERIV__even__real__root,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       => ( ( ord_less_real @ X @ zero_zero_real )
         => ( has_fi5821293074295781190e_real @ ( root @ N ) @ ( inverse_inverse_real @ ( times_times_real @ ( uminus_uminus_real @ ( semiri5074537144036343181t_real @ N ) ) @ ( power_power_real @ ( root @ N @ X ) @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) ) ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ) ).

% DERIV_even_real_root
thf(fact_2716_has__real__derivative__neg__dec__right,axiom,
    ! [F: real > real,L2: real,X: real,S3: set_real] :
      ( ( has_fi5821293074295781190e_real @ F @ L2 @ ( topolo2177554685111907308n_real @ X @ S3 ) )
     => ( ( ord_less_real @ L2 @ zero_zero_real )
       => ? [D3: real] :
            ( ( ord_less_real @ zero_zero_real @ D3 )
            & ! [H3: real] :
                ( ( ord_less_real @ zero_zero_real @ H3 )
               => ( ( member_real @ ( plus_plus_real @ X @ H3 ) @ S3 )
                 => ( ( ord_less_real @ H3 @ D3 )
                   => ( ord_less_real @ ( F @ ( plus_plus_real @ X @ H3 ) ) @ ( F @ X ) ) ) ) ) ) ) ) ).

% has_real_derivative_neg_dec_right
thf(fact_2717_has__real__derivative__pos__inc__right,axiom,
    ! [F: real > real,L2: real,X: real,S3: set_real] :
      ( ( has_fi5821293074295781190e_real @ F @ L2 @ ( topolo2177554685111907308n_real @ X @ S3 ) )
     => ( ( ord_less_real @ zero_zero_real @ L2 )
       => ? [D3: real] :
            ( ( ord_less_real @ zero_zero_real @ D3 )
            & ! [H3: real] :
                ( ( ord_less_real @ zero_zero_real @ H3 )
               => ( ( member_real @ ( plus_plus_real @ X @ H3 ) @ S3 )
                 => ( ( ord_less_real @ H3 @ D3 )
                   => ( ord_less_real @ ( F @ X ) @ ( F @ ( plus_plus_real @ X @ H3 ) ) ) ) ) ) ) ) ) ).

% has_real_derivative_pos_inc_right
thf(fact_2718_DERIV__neg__dec__right,axiom,
    ! [F: real > real,L2: real,X: real] :
      ( ( has_fi5821293074295781190e_real @ F @ L2 @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
     => ( ( ord_less_real @ L2 @ zero_zero_real )
       => ? [D3: real] :
            ( ( ord_less_real @ zero_zero_real @ D3 )
            & ! [H3: real] :
                ( ( ord_less_real @ zero_zero_real @ H3 )
               => ( ( ord_less_real @ H3 @ D3 )
                 => ( ord_less_real @ ( F @ ( plus_plus_real @ X @ H3 ) ) @ ( F @ X ) ) ) ) ) ) ) ).

% DERIV_neg_dec_right
thf(fact_2719_DERIV__pos__inc__right,axiom,
    ! [F: real > real,L2: real,X: real] :
      ( ( has_fi5821293074295781190e_real @ F @ L2 @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
     => ( ( ord_less_real @ zero_zero_real @ L2 )
       => ? [D3: real] :
            ( ( ord_less_real @ zero_zero_real @ D3 )
            & ! [H3: real] :
                ( ( ord_less_real @ zero_zero_real @ H3 )
               => ( ( ord_less_real @ H3 @ D3 )
                 => ( ord_less_real @ ( F @ X ) @ ( F @ ( plus_plus_real @ X @ H3 ) ) ) ) ) ) ) ) ).

% DERIV_pos_inc_right
thf(fact_2720_deriv__nonneg__imp__mono,axiom,
    ! [A: real,B: real,G: real > real,G2: real > real] :
      ( ! [X5: real] :
          ( ( member_real @ X5 @ ( set_or1222579329274155063t_real @ A @ B ) )
         => ( has_fi5821293074295781190e_real @ G @ ( G2 @ X5 ) @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) ) )
     => ( ! [X5: real] :
            ( ( member_real @ X5 @ ( set_or1222579329274155063t_real @ A @ B ) )
           => ( ord_less_eq_real @ zero_zero_real @ ( G2 @ X5 ) ) )
       => ( ( ord_less_eq_real @ A @ B )
         => ( ord_less_eq_real @ ( G @ A ) @ ( G @ B ) ) ) ) ) ).

% deriv_nonneg_imp_mono
thf(fact_2721_DERIV__nonneg__imp__nondecreasing,axiom,
    ! [A: real,B: real,F: real > real] :
      ( ( ord_less_eq_real @ A @ B )
     => ( ! [X5: real] :
            ( ( ord_less_eq_real @ A @ X5 )
           => ( ( ord_less_eq_real @ X5 @ B )
             => ? [Y: real] :
                  ( ( has_fi5821293074295781190e_real @ F @ Y @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
                  & ( ord_less_eq_real @ zero_zero_real @ Y ) ) ) )
       => ( ord_less_eq_real @ ( F @ A ) @ ( F @ B ) ) ) ) ).

% DERIV_nonneg_imp_nondecreasing
thf(fact_2722_DERIV__nonpos__imp__nonincreasing,axiom,
    ! [A: real,B: real,F: real > real] :
      ( ( ord_less_eq_real @ A @ B )
     => ( ! [X5: real] :
            ( ( ord_less_eq_real @ A @ X5 )
           => ( ( ord_less_eq_real @ X5 @ B )
             => ? [Y: real] :
                  ( ( has_fi5821293074295781190e_real @ F @ Y @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
                  & ( ord_less_eq_real @ Y @ zero_zero_real ) ) ) )
       => ( ord_less_eq_real @ ( F @ B ) @ ( F @ A ) ) ) ) ).

% DERIV_nonpos_imp_nonincreasing
thf(fact_2723_DERIV__neg__imp__decreasing,axiom,
    ! [A: real,B: real,F: real > real] :
      ( ( ord_less_real @ A @ B )
     => ( ! [X5: real] :
            ( ( ord_less_eq_real @ A @ X5 )
           => ( ( ord_less_eq_real @ X5 @ B )
             => ? [Y: real] :
                  ( ( has_fi5821293074295781190e_real @ F @ Y @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
                  & ( ord_less_real @ Y @ zero_zero_real ) ) ) )
       => ( ord_less_real @ ( F @ B ) @ ( F @ A ) ) ) ) ).

% DERIV_neg_imp_decreasing
thf(fact_2724_DERIV__pos__imp__increasing,axiom,
    ! [A: real,B: real,F: real > real] :
      ( ( ord_less_real @ A @ B )
     => ( ! [X5: real] :
            ( ( ord_less_eq_real @ A @ X5 )
           => ( ( ord_less_eq_real @ X5 @ B )
             => ? [Y: real] :
                  ( ( has_fi5821293074295781190e_real @ F @ Y @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
                  & ( ord_less_real @ zero_zero_real @ Y ) ) ) )
       => ( ord_less_real @ ( F @ A ) @ ( F @ B ) ) ) ) ).

% DERIV_pos_imp_increasing
thf(fact_2725_DERIV__const__ratio__const,axiom,
    ! [A: real,B: real,F: real > real,K: real] :
      ( ( A != B )
     => ( ! [X5: real] : ( has_fi5821293074295781190e_real @ F @ K @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
       => ( ( minus_minus_real @ ( F @ B ) @ ( F @ A ) )
          = ( times_times_real @ ( minus_minus_real @ B @ A ) @ K ) ) ) ) ).

% DERIV_const_ratio_const
thf(fact_2726_MVT2,axiom,
    ! [A: real,B: real,F: real > real,F2: real > real] :
      ( ( ord_less_real @ A @ B )
     => ( ! [X5: real] :
            ( ( ord_less_eq_real @ A @ X5 )
           => ( ( ord_less_eq_real @ X5 @ B )
             => ( has_fi5821293074295781190e_real @ F @ ( F2 @ X5 ) @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) ) ) )
       => ? [Z3: real] :
            ( ( ord_less_real @ A @ Z3 )
            & ( ord_less_real @ Z3 @ B )
            & ( ( minus_minus_real @ ( F @ B ) @ ( F @ A ) )
              = ( times_times_real @ ( minus_minus_real @ B @ A ) @ ( F2 @ Z3 ) ) ) ) ) ) ).

% MVT2
thf(fact_2727_DERIV__const__average,axiom,
    ! [A: real,B: real,V: real > real,K: real] :
      ( ( A != B )
     => ( ! [X5: real] : ( has_fi5821293074295781190e_real @ V @ K @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
       => ( ( V @ ( divide_divide_real @ ( plus_plus_real @ A @ B ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) )
          = ( divide_divide_real @ ( plus_plus_real @ ( V @ A ) @ ( V @ B ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% DERIV_const_average
thf(fact_2728_DERIV__local__min,axiom,
    ! [F: real > real,L2: real,X: real,D: real] :
      ( ( has_fi5821293074295781190e_real @ F @ L2 @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
     => ( ( ord_less_real @ zero_zero_real @ D )
       => ( ! [Y3: real] :
              ( ( ord_less_real @ ( abs_abs_real @ ( minus_minus_real @ X @ Y3 ) ) @ D )
             => ( ord_less_eq_real @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( L2 = zero_zero_real ) ) ) ) ).

% DERIV_local_min
thf(fact_2729_DERIV__local__max,axiom,
    ! [F: real > real,L2: real,X: real,D: real] :
      ( ( has_fi5821293074295781190e_real @ F @ L2 @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
     => ( ( ord_less_real @ zero_zero_real @ D )
       => ( ! [Y3: real] :
              ( ( ord_less_real @ ( abs_abs_real @ ( minus_minus_real @ X @ Y3 ) ) @ D )
             => ( ord_less_eq_real @ ( F @ Y3 ) @ ( F @ X ) ) )
         => ( L2 = zero_zero_real ) ) ) ) ).

% DERIV_local_max
thf(fact_2730_DERIV__ln__divide,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( has_fi5821293074295781190e_real @ ln_ln_real @ ( divide_divide_real @ one_one_real @ X ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ).

% DERIV_ln_divide
thf(fact_2731_DERIV__pow,axiom,
    ! [N: nat,X: real,S: set_real] :
      ( has_fi5821293074295781190e_real
      @ ^ [X4: real] : ( power_power_real @ X4 @ N )
      @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( power_power_real @ X @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) ) )
      @ ( topolo2177554685111907308n_real @ X @ S ) ) ).

% DERIV_pow
thf(fact_2732_DERIV__fun__pow,axiom,
    ! [G: real > real,M: real,X: real,N: nat] :
      ( ( has_fi5821293074295781190e_real @ G @ M @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
     => ( has_fi5821293074295781190e_real
        @ ^ [X4: real] : ( power_power_real @ ( G @ X4 ) @ N )
        @ ( times_times_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( power_power_real @ ( G @ X ) @ ( minus_minus_nat @ N @ one_one_nat ) ) ) @ M )
        @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ).

% DERIV_fun_pow
thf(fact_2733_has__real__derivative__powr,axiom,
    ! [Z: real,R2: real] :
      ( ( ord_less_real @ zero_zero_real @ Z )
     => ( has_fi5821293074295781190e_real
        @ ^ [Z5: real] : ( powr_real @ Z5 @ R2 )
        @ ( times_times_real @ R2 @ ( powr_real @ Z @ ( minus_minus_real @ R2 @ one_one_real ) ) )
        @ ( topolo2177554685111907308n_real @ Z @ top_top_set_real ) ) ) ).

% has_real_derivative_powr
thf(fact_2734_DERIV__log,axiom,
    ! [X: real,B: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( has_fi5821293074295781190e_real @ ( log @ B ) @ ( divide_divide_real @ one_one_real @ ( times_times_real @ ( ln_ln_real @ B ) @ X ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ).

% DERIV_log
thf(fact_2735_DERIV__fun__powr,axiom,
    ! [G: real > real,M: real,X: real,R2: real] :
      ( ( has_fi5821293074295781190e_real @ G @ M @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
     => ( ( ord_less_real @ zero_zero_real @ ( G @ X ) )
       => ( has_fi5821293074295781190e_real
          @ ^ [X4: real] : ( powr_real @ ( G @ X4 ) @ R2 )
          @ ( times_times_real @ ( times_times_real @ R2 @ ( powr_real @ ( G @ X ) @ ( minus_minus_real @ R2 @ ( semiri5074537144036343181t_real @ one_one_nat ) ) ) ) @ M )
          @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ).

% DERIV_fun_powr
thf(fact_2736_DERIV__powr,axiom,
    ! [G: real > real,M: real,X: real,F: real > real,R2: real] :
      ( ( has_fi5821293074295781190e_real @ G @ M @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
     => ( ( ord_less_real @ zero_zero_real @ ( G @ X ) )
       => ( ( has_fi5821293074295781190e_real @ F @ R2 @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) )
         => ( has_fi5821293074295781190e_real
            @ ^ [X4: real] : ( powr_real @ ( G @ X4 ) @ ( F @ X4 ) )
            @ ( times_times_real @ ( powr_real @ ( G @ X ) @ ( F @ X ) ) @ ( plus_plus_real @ ( times_times_real @ R2 @ ( ln_ln_real @ ( G @ X ) ) ) @ ( divide_divide_real @ ( times_times_real @ M @ ( F @ X ) ) @ ( G @ X ) ) ) )
            @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ) ).

% DERIV_powr
thf(fact_2737_DERIV__real__sqrt,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ( has_fi5821293074295781190e_real @ sqrt @ ( divide_divide_real @ ( inverse_inverse_real @ ( sqrt @ X ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ).

% DERIV_real_sqrt
thf(fact_2738_DERIV__series_H,axiom,
    ! [F: real > nat > real,F2: real > nat > real,X0: real,A: real,B: real,L4: nat > real] :
      ( ! [N4: nat] :
          ( has_fi5821293074295781190e_real
          @ ^ [X4: real] : ( F @ X4 @ N4 )
          @ ( F2 @ X0 @ N4 )
          @ ( topolo2177554685111907308n_real @ X0 @ top_top_set_real ) )
     => ( ! [X5: real] :
            ( ( member_real @ X5 @ ( set_or1633881224788618240n_real @ A @ B ) )
           => ( summable_real @ ( F @ X5 ) ) )
       => ( ( member_real @ X0 @ ( set_or1633881224788618240n_real @ A @ B ) )
         => ( ( summable_real @ ( F2 @ X0 ) )
           => ( ( summable_real @ L4 )
             => ( ! [N4: nat,X5: real,Y3: real] :
                    ( ( member_real @ X5 @ ( set_or1633881224788618240n_real @ A @ B ) )
                   => ( ( member_real @ Y3 @ ( set_or1633881224788618240n_real @ A @ B ) )
                     => ( ord_less_eq_real @ ( abs_abs_real @ ( minus_minus_real @ ( F @ X5 @ N4 ) @ ( F @ Y3 @ N4 ) ) ) @ ( times_times_real @ ( L4 @ N4 ) @ ( abs_abs_real @ ( minus_minus_real @ X5 @ Y3 ) ) ) ) ) )
               => ( has_fi5821293074295781190e_real
                  @ ^ [X4: real] : ( suminf_real @ ( F @ X4 ) )
                  @ ( suminf_real @ ( F2 @ X0 ) )
                  @ ( topolo2177554685111907308n_real @ X0 @ top_top_set_real ) ) ) ) ) ) ) ) ).

% DERIV_series'
thf(fact_2739_DERIV__arctan,axiom,
    ! [X: real] : ( has_fi5821293074295781190e_real @ arctan @ ( inverse_inverse_real @ ( plus_plus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ).

% DERIV_arctan
thf(fact_2740_arsinh__real__has__field__derivative,axiom,
    ! [X: real,A2: set_real] : ( has_fi5821293074295781190e_real @ arsinh_real @ ( divide_divide_real @ one_one_real @ ( sqrt @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_real ) ) ) @ ( topolo2177554685111907308n_real @ X @ A2 ) ) ).

% arsinh_real_has_field_derivative
thf(fact_2741_DERIV__real__sqrt__generic,axiom,
    ! [X: real,D5: real] :
      ( ( X != zero_zero_real )
     => ( ( ( ord_less_real @ zero_zero_real @ X )
         => ( D5
            = ( divide_divide_real @ ( inverse_inverse_real @ ( sqrt @ X ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) )
       => ( ( ( ord_less_real @ X @ zero_zero_real )
           => ( D5
              = ( divide_divide_real @ ( uminus_uminus_real @ ( inverse_inverse_real @ ( sqrt @ X ) ) ) @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) )
         => ( has_fi5821293074295781190e_real @ sqrt @ D5 @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ) ).

% DERIV_real_sqrt_generic
thf(fact_2742_arcosh__real__has__field__derivative,axiom,
    ! [X: real,A2: set_real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( has_fi5821293074295781190e_real @ arcosh_real @ ( divide_divide_real @ one_one_real @ ( sqrt @ ( minus_minus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_real ) ) ) @ ( topolo2177554685111907308n_real @ X @ A2 ) ) ) ).

% arcosh_real_has_field_derivative
thf(fact_2743_artanh__real__has__field__derivative,axiom,
    ! [X: real,A2: set_real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( has_fi5821293074295781190e_real @ artanh_real @ ( divide_divide_real @ one_one_real @ ( minus_minus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) @ ( topolo2177554685111907308n_real @ X @ A2 ) ) ) ).

% artanh_real_has_field_derivative
thf(fact_2744_DERIV__power__series_H,axiom,
    ! [R: real,F: nat > real,X0: real] :
      ( ! [X5: real] :
          ( ( member_real @ X5 @ ( set_or1633881224788618240n_real @ ( uminus_uminus_real @ R ) @ R ) )
         => ( summable_real
            @ ^ [N2: nat] : ( times_times_real @ ( times_times_real @ ( F @ N2 ) @ ( semiri5074537144036343181t_real @ ( suc @ N2 ) ) ) @ ( power_power_real @ X5 @ N2 ) ) ) )
     => ( ( member_real @ X0 @ ( set_or1633881224788618240n_real @ ( uminus_uminus_real @ R ) @ R ) )
       => ( ( ord_less_real @ zero_zero_real @ R )
         => ( has_fi5821293074295781190e_real
            @ ^ [X4: real] :
                ( suminf_real
                @ ^ [N2: nat] : ( times_times_real @ ( F @ N2 ) @ ( power_power_real @ X4 @ ( suc @ N2 ) ) ) )
            @ ( suminf_real
              @ ^ [N2: nat] : ( times_times_real @ ( times_times_real @ ( F @ N2 ) @ ( semiri5074537144036343181t_real @ ( suc @ N2 ) ) ) @ ( power_power_real @ X0 @ N2 ) ) )
            @ ( topolo2177554685111907308n_real @ X0 @ top_top_set_real ) ) ) ) ) ).

% DERIV_power_series'
thf(fact_2745_DERIV__real__root,axiom,
    ! [N: nat,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ X )
       => ( has_fi5821293074295781190e_real @ ( root @ N ) @ ( inverse_inverse_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( power_power_real @ ( root @ N @ X ) @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) ) ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ).

% DERIV_real_root
thf(fact_2746_DERIV__arccos,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( has_fi5821293074295781190e_real @ arccos @ ( inverse_inverse_real @ ( uminus_uminus_real @ ( sqrt @ ( minus_minus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ).

% DERIV_arccos
thf(fact_2747_DERIV__arcsin,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( has_fi5821293074295781190e_real @ arcsin @ ( inverse_inverse_real @ ( sqrt @ ( minus_minus_real @ one_one_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ).

% DERIV_arcsin
thf(fact_2748_Maclaurin__all__le,axiom,
    ! [Diff: nat > real > real,F: real > real,X: real,N: nat] :
      ( ( ( Diff @ zero_zero_nat )
        = F )
     => ( ! [M5: nat,X5: real] : ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ X5 ) @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
       => ? [T3: real] :
            ( ( ord_less_eq_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
            & ( ( F @ X )
              = ( plus_plus_real
                @ ( groups6591440286371151544t_real
                  @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ X @ M6 ) )
                  @ ( set_ord_lessThan_nat @ N ) )
                @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ) ).

% Maclaurin_all_le
thf(fact_2749_Maclaurin__all__le__objl,axiom,
    ! [Diff: nat > real > real,F: real > real,X: real,N: nat] :
      ( ( ( ( Diff @ zero_zero_nat )
          = F )
        & ! [M5: nat,X5: real] : ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ X5 ) @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) ) )
     => ? [T3: real] :
          ( ( ord_less_eq_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
          & ( ( F @ X )
            = ( plus_plus_real
              @ ( groups6591440286371151544t_real
                @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ X @ M6 ) )
                @ ( set_ord_lessThan_nat @ N ) )
              @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ).

% Maclaurin_all_le_objl
thf(fact_2750_DERIV__odd__real__root,axiom,
    ! [N: nat,X: real] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( X != zero_zero_real )
       => ( has_fi5821293074295781190e_real @ ( root @ N ) @ ( inverse_inverse_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( power_power_real @ ( root @ N @ X ) @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) ) ) ) @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ).

% DERIV_odd_real_root
thf(fact_2751_Maclaurin,axiom,
    ! [H2: real,N: nat,Diff: nat > real > real,F: real > real] :
      ( ( ord_less_real @ zero_zero_real @ H2 )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ( Diff @ zero_zero_nat )
            = F )
         => ( ! [M5: nat,T3: real] :
                ( ( ( ord_less_nat @ M5 @ N )
                  & ( ord_less_eq_real @ zero_zero_real @ T3 )
                  & ( ord_less_eq_real @ T3 @ H2 ) )
               => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
           => ? [T3: real] :
                ( ( ord_less_real @ zero_zero_real @ T3 )
                & ( ord_less_real @ T3 @ H2 )
                & ( ( F @ H2 )
                  = ( plus_plus_real
                    @ ( groups6591440286371151544t_real
                      @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ H2 @ M6 ) )
                      @ ( set_ord_lessThan_nat @ N ) )
                    @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ H2 @ N ) ) ) ) ) ) ) ) ) ).

% Maclaurin
thf(fact_2752_Maclaurin2,axiom,
    ! [H2: real,Diff: nat > real > real,F: real > real,N: nat] :
      ( ( ord_less_real @ zero_zero_real @ H2 )
     => ( ( ( Diff @ zero_zero_nat )
          = F )
       => ( ! [M5: nat,T3: real] :
              ( ( ( ord_less_nat @ M5 @ N )
                & ( ord_less_eq_real @ zero_zero_real @ T3 )
                & ( ord_less_eq_real @ T3 @ H2 ) )
             => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
         => ? [T3: real] :
              ( ( ord_less_real @ zero_zero_real @ T3 )
              & ( ord_less_eq_real @ T3 @ H2 )
              & ( ( F @ H2 )
                = ( plus_plus_real
                  @ ( groups6591440286371151544t_real
                    @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ H2 @ M6 ) )
                    @ ( set_ord_lessThan_nat @ N ) )
                  @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ H2 @ N ) ) ) ) ) ) ) ) ).

% Maclaurin2
thf(fact_2753_Maclaurin__minus,axiom,
    ! [H2: real,N: nat,Diff: nat > real > real,F: real > real] :
      ( ( ord_less_real @ H2 @ zero_zero_real )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ( Diff @ zero_zero_nat )
            = F )
         => ( ! [M5: nat,T3: real] :
                ( ( ( ord_less_nat @ M5 @ N )
                  & ( ord_less_eq_real @ H2 @ T3 )
                  & ( ord_less_eq_real @ T3 @ zero_zero_real ) )
               => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
           => ? [T3: real] :
                ( ( ord_less_real @ H2 @ T3 )
                & ( ord_less_real @ T3 @ zero_zero_real )
                & ( ( F @ H2 )
                  = ( plus_plus_real
                    @ ( groups6591440286371151544t_real
                      @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ H2 @ M6 ) )
                      @ ( set_ord_lessThan_nat @ N ) )
                    @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ H2 @ N ) ) ) ) ) ) ) ) ) ).

% Maclaurin_minus
thf(fact_2754_Maclaurin__all__lt,axiom,
    ! [Diff: nat > real > real,F: real > real,N: nat,X: real] :
      ( ( ( Diff @ zero_zero_nat )
        = F )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( X != zero_zero_real )
         => ( ! [M5: nat,X5: real] : ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ X5 ) @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
           => ? [T3: real] :
                ( ( ord_less_real @ zero_zero_real @ ( abs_abs_real @ T3 ) )
                & ( ord_less_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
                & ( ( F @ X )
                  = ( plus_plus_real
                    @ ( groups6591440286371151544t_real
                      @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ X @ M6 ) )
                      @ ( set_ord_lessThan_nat @ N ) )
                    @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ) ) ) ).

% Maclaurin_all_lt
thf(fact_2755_Maclaurin__bi__le,axiom,
    ! [Diff: nat > real > real,F: real > real,N: nat,X: real] :
      ( ( ( Diff @ zero_zero_nat )
        = F )
     => ( ! [M5: nat,T3: real] :
            ( ( ( ord_less_nat @ M5 @ N )
              & ( ord_less_eq_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) ) )
           => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
       => ? [T3: real] :
            ( ( ord_less_eq_real @ ( abs_abs_real @ T3 ) @ ( abs_abs_real @ X ) )
            & ( ( F @ X )
              = ( plus_plus_real
                @ ( groups6591440286371151544t_real
                  @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ X @ M6 ) )
                  @ ( set_ord_lessThan_nat @ N ) )
                @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ X @ N ) ) ) ) ) ) ) ).

% Maclaurin_bi_le
thf(fact_2756_Taylor,axiom,
    ! [N: nat,Diff: nat > real > real,F: real > real,A: real,B: real,C: real,X: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ( Diff @ zero_zero_nat )
          = F )
       => ( ! [M5: nat,T3: real] :
              ( ( ( ord_less_nat @ M5 @ N )
                & ( ord_less_eq_real @ A @ T3 )
                & ( ord_less_eq_real @ T3 @ B ) )
             => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
         => ( ( ord_less_eq_real @ A @ C )
           => ( ( ord_less_eq_real @ C @ B )
             => ( ( ord_less_eq_real @ A @ X )
               => ( ( ord_less_eq_real @ X @ B )
                 => ( ( X != C )
                   => ? [T3: real] :
                        ( ( ( ord_less_real @ X @ C )
                         => ( ( ord_less_real @ X @ T3 )
                            & ( ord_less_real @ T3 @ C ) ) )
                        & ( ~ ( ord_less_real @ X @ C )
                         => ( ( ord_less_real @ C @ T3 )
                            & ( ord_less_real @ T3 @ X ) ) )
                        & ( ( F @ X )
                          = ( plus_plus_real
                            @ ( groups6591440286371151544t_real
                              @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ C ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ ( minus_minus_real @ X @ C ) @ M6 ) )
                              @ ( set_ord_lessThan_nat @ N ) )
                            @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ ( minus_minus_real @ X @ C ) @ N ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% Taylor
thf(fact_2757_Taylor__up,axiom,
    ! [N: nat,Diff: nat > real > real,F: real > real,A: real,B: real,C: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ( Diff @ zero_zero_nat )
          = F )
       => ( ! [M5: nat,T3: real] :
              ( ( ( ord_less_nat @ M5 @ N )
                & ( ord_less_eq_real @ A @ T3 )
                & ( ord_less_eq_real @ T3 @ B ) )
             => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
         => ( ( ord_less_eq_real @ A @ C )
           => ( ( ord_less_real @ C @ B )
             => ? [T3: real] :
                  ( ( ord_less_real @ C @ T3 )
                  & ( ord_less_real @ T3 @ B )
                  & ( ( F @ B )
                    = ( plus_plus_real
                      @ ( groups6591440286371151544t_real
                        @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ C ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ ( minus_minus_real @ B @ C ) @ M6 ) )
                        @ ( set_ord_lessThan_nat @ N ) )
                      @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ ( minus_minus_real @ B @ C ) @ N ) ) ) ) ) ) ) ) ) ) ).

% Taylor_up
thf(fact_2758_Taylor__down,axiom,
    ! [N: nat,Diff: nat > real > real,F: real > real,A: real,B: real,C: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ( Diff @ zero_zero_nat )
          = F )
       => ( ! [M5: nat,T3: real] :
              ( ( ( ord_less_nat @ M5 @ N )
                & ( ord_less_eq_real @ A @ T3 )
                & ( ord_less_eq_real @ T3 @ B ) )
             => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
         => ( ( ord_less_real @ A @ C )
           => ( ( ord_less_eq_real @ C @ B )
             => ? [T3: real] :
                  ( ( ord_less_real @ A @ T3 )
                  & ( ord_less_real @ T3 @ C )
                  & ( ( F @ A )
                    = ( plus_plus_real
                      @ ( groups6591440286371151544t_real
                        @ ^ [M6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ M6 @ C ) @ ( semiri2265585572941072030t_real @ M6 ) ) @ ( power_power_real @ ( minus_minus_real @ A @ C ) @ M6 ) )
                        @ ( set_ord_lessThan_nat @ N ) )
                      @ ( times_times_real @ ( divide_divide_real @ ( Diff @ N @ T3 ) @ ( semiri2265585572941072030t_real @ N ) ) @ ( power_power_real @ ( minus_minus_real @ A @ C ) @ N ) ) ) ) ) ) ) ) ) ) ).

% Taylor_down
thf(fact_2759_Maclaurin__lemma2,axiom,
    ! [N: nat,H2: real,Diff: nat > real > real,K: nat,B2: real] :
      ( ! [M5: nat,T3: real] :
          ( ( ( ord_less_nat @ M5 @ N )
            & ( ord_less_eq_real @ zero_zero_real @ T3 )
            & ( ord_less_eq_real @ T3 @ H2 ) )
         => ( has_fi5821293074295781190e_real @ ( Diff @ M5 ) @ ( Diff @ ( suc @ M5 ) @ T3 ) @ ( topolo2177554685111907308n_real @ T3 @ top_top_set_real ) ) )
     => ( ( N
          = ( suc @ K ) )
       => ! [M3: nat,T4: real] :
            ( ( ( ord_less_nat @ M3 @ N )
              & ( ord_less_eq_real @ zero_zero_real @ T4 )
              & ( ord_less_eq_real @ T4 @ H2 ) )
           => ( has_fi5821293074295781190e_real
              @ ^ [U3: real] :
                  ( minus_minus_real @ ( Diff @ M3 @ U3 )
                  @ ( plus_plus_real
                    @ ( groups6591440286371151544t_real
                      @ ^ [P6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ ( plus_plus_nat @ M3 @ P6 ) @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ P6 ) ) @ ( power_power_real @ U3 @ P6 ) )
                      @ ( set_ord_lessThan_nat @ ( minus_minus_nat @ N @ M3 ) ) )
                    @ ( times_times_real @ B2 @ ( divide_divide_real @ ( power_power_real @ U3 @ ( minus_minus_nat @ N @ M3 ) ) @ ( semiri2265585572941072030t_real @ ( minus_minus_nat @ N @ M3 ) ) ) ) ) )
              @ ( minus_minus_real @ ( Diff @ ( suc @ M3 ) @ T4 )
                @ ( plus_plus_real
                  @ ( groups6591440286371151544t_real
                    @ ^ [P6: nat] : ( times_times_real @ ( divide_divide_real @ ( Diff @ ( plus_plus_nat @ ( suc @ M3 ) @ P6 ) @ zero_zero_real ) @ ( semiri2265585572941072030t_real @ P6 ) ) @ ( power_power_real @ T4 @ P6 ) )
                    @ ( set_ord_lessThan_nat @ ( minus_minus_nat @ N @ ( suc @ M3 ) ) ) )
                  @ ( times_times_real @ B2 @ ( divide_divide_real @ ( power_power_real @ T4 @ ( minus_minus_nat @ N @ ( suc @ M3 ) ) ) @ ( semiri2265585572941072030t_real @ ( minus_minus_nat @ N @ ( suc @ M3 ) ) ) ) ) ) )
              @ ( topolo2177554685111907308n_real @ T4 @ top_top_set_real ) ) ) ) ) ).

% Maclaurin_lemma2
thf(fact_2760_DERIV__arctan__series,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( has_fi5821293074295781190e_real
        @ ^ [X9: real] :
            ( suminf_real
            @ ^ [K3: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ K3 ) @ ( times_times_real @ ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) @ ( power_power_real @ X9 @ ( plus_plus_nat @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) ) )
        @ ( suminf_real
          @ ^ [K3: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ K3 ) @ ( power_power_real @ X @ ( times_times_nat @ K3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
        @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ).

% DERIV_arctan_series
thf(fact_2761_DERIV__real__root__generic,axiom,
    ! [N: nat,X: real,D5: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( X != zero_zero_real )
       => ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
           => ( ( ord_less_real @ zero_zero_real @ X )
             => ( D5
                = ( inverse_inverse_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( power_power_real @ ( root @ N @ X ) @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) )
         => ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
             => ( ( ord_less_real @ X @ zero_zero_real )
               => ( D5
                  = ( uminus_uminus_real @ ( inverse_inverse_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( power_power_real @ ( root @ N @ X ) @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ) )
           => ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
               => ( D5
                  = ( inverse_inverse_real @ ( times_times_real @ ( semiri5074537144036343181t_real @ N ) @ ( power_power_real @ ( root @ N @ X ) @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) ) ) ) ) )
             => ( has_fi5821293074295781190e_real @ ( root @ N ) @ D5 @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) ) ) ) ) ) ) ).

% DERIV_real_root_generic
thf(fact_2762_isCont__Lb__Ub,axiom,
    ! [A: real,B: real,F: real > real] :
      ( ( ord_less_eq_real @ A @ B )
     => ( ! [X5: real] :
            ( ( ( ord_less_eq_real @ A @ X5 )
              & ( ord_less_eq_real @ X5 @ B ) )
           => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) @ F ) )
       => ? [L5: real,M9: real] :
            ( ! [X3: real] :
                ( ( ( ord_less_eq_real @ A @ X3 )
                  & ( ord_less_eq_real @ X3 @ B ) )
               => ( ( ord_less_eq_real @ L5 @ ( F @ X3 ) )
                  & ( ord_less_eq_real @ ( F @ X3 ) @ M9 ) ) )
            & ! [Y: real] :
                ( ( ( ord_less_eq_real @ L5 @ Y )
                  & ( ord_less_eq_real @ Y @ M9 ) )
               => ? [X5: real] :
                    ( ( ord_less_eq_real @ A @ X5 )
                    & ( ord_less_eq_real @ X5 @ B )
                    & ( ( F @ X5 )
                      = Y ) ) ) ) ) ) ).

% isCont_Lb_Ub
thf(fact_2763_isCont__real__sqrt,axiom,
    ! [X: real] : ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) @ sqrt ) ).

% isCont_real_sqrt
thf(fact_2764_isCont__real__root,axiom,
    ! [X: real,N: nat] : ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) @ ( root @ N ) ) ).

% isCont_real_root
thf(fact_2765_isCont__inverse__function2,axiom,
    ! [A: real,X: real,B: real,G: real > real,F: real > real] :
      ( ( ord_less_real @ A @ X )
     => ( ( ord_less_real @ X @ B )
       => ( ! [Z3: real] :
              ( ( ord_less_eq_real @ A @ Z3 )
             => ( ( ord_less_eq_real @ Z3 @ B )
               => ( ( G @ ( F @ Z3 ) )
                  = Z3 ) ) )
         => ( ! [Z3: real] :
                ( ( ord_less_eq_real @ A @ Z3 )
               => ( ( ord_less_eq_real @ Z3 @ B )
                 => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ Z3 @ top_top_set_real ) @ F ) ) )
           => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ ( F @ X ) @ top_top_set_real ) @ G ) ) ) ) ) ).

% isCont_inverse_function2
thf(fact_2766_isCont__arcosh,axiom,
    ! [X: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) @ arcosh_real ) ) ).

% isCont_arcosh
thf(fact_2767_LIM__cos__div__sin,axiom,
    ( filterlim_real_real
    @ ^ [X4: real] : ( divide_divide_real @ ( cos_real @ X4 ) @ ( sin_real @ X4 ) )
    @ ( topolo2815343760600316023s_real @ zero_zero_real )
    @ ( topolo2177554685111907308n_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ top_top_set_real ) ) ).

% LIM_cos_div_sin
thf(fact_2768_isCont__arccos,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) @ arccos ) ) ) ).

% isCont_arccos
thf(fact_2769_isCont__arcsin,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) @ arcsin ) ) ) ).

% isCont_arcsin
thf(fact_2770_LIM__less__bound,axiom,
    ! [B: real,X: real,F: real > real] :
      ( ( ord_less_real @ B @ X )
     => ( ! [X5: real] :
            ( ( member_real @ X5 @ ( set_or1633881224788618240n_real @ B @ X ) )
           => ( ord_less_eq_real @ zero_zero_real @ ( F @ X5 ) ) )
       => ( ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) @ F )
         => ( ord_less_eq_real @ zero_zero_real @ ( F @ X ) ) ) ) ) ).

% LIM_less_bound
thf(fact_2771_isCont__artanh,axiom,
    ! [X: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X @ top_top_set_real ) @ artanh_real ) ) ) ).

% isCont_artanh
thf(fact_2772_isCont__inverse__function,axiom,
    ! [D: real,X: real,G: real > real,F: real > real] :
      ( ( ord_less_real @ zero_zero_real @ D )
     => ( ! [Z3: real] :
            ( ( ord_less_eq_real @ ( abs_abs_real @ ( minus_minus_real @ Z3 @ X ) ) @ D )
           => ( ( G @ ( F @ Z3 ) )
              = Z3 ) )
       => ( ! [Z3: real] :
              ( ( ord_less_eq_real @ ( abs_abs_real @ ( minus_minus_real @ Z3 @ X ) ) @ D )
             => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ Z3 @ top_top_set_real ) @ F ) )
         => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ ( F @ X ) @ top_top_set_real ) @ G ) ) ) ) ).

% isCont_inverse_function
thf(fact_2773_GMVT_H,axiom,
    ! [A: real,B: real,F: real > real,G: real > real,G2: real > real,F2: real > real] :
      ( ( ord_less_real @ A @ B )
     => ( ! [Z3: real] :
            ( ( ord_less_eq_real @ A @ Z3 )
           => ( ( ord_less_eq_real @ Z3 @ B )
             => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ Z3 @ top_top_set_real ) @ F ) ) )
       => ( ! [Z3: real] :
              ( ( ord_less_eq_real @ A @ Z3 )
             => ( ( ord_less_eq_real @ Z3 @ B )
               => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ Z3 @ top_top_set_real ) @ G ) ) )
         => ( ! [Z3: real] :
                ( ( ord_less_real @ A @ Z3 )
               => ( ( ord_less_real @ Z3 @ B )
                 => ( has_fi5821293074295781190e_real @ G @ ( G2 @ Z3 ) @ ( topolo2177554685111907308n_real @ Z3 @ top_top_set_real ) ) ) )
           => ( ! [Z3: real] :
                  ( ( ord_less_real @ A @ Z3 )
                 => ( ( ord_less_real @ Z3 @ B )
                   => ( has_fi5821293074295781190e_real @ F @ ( F2 @ Z3 ) @ ( topolo2177554685111907308n_real @ Z3 @ top_top_set_real ) ) ) )
             => ? [C2: real] :
                  ( ( ord_less_real @ A @ C2 )
                  & ( ord_less_real @ C2 @ B )
                  & ( ( times_times_real @ ( minus_minus_real @ ( F @ B ) @ ( F @ A ) ) @ ( G2 @ C2 ) )
                    = ( times_times_real @ ( minus_minus_real @ ( G @ B ) @ ( G @ A ) ) @ ( F2 @ C2 ) ) ) ) ) ) ) ) ) ).

% GMVT'
thf(fact_2774_summable__Leibniz_I2_J,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ( topolo6980174941875973593q_real @ A )
       => ( ( ord_less_real @ zero_zero_real @ ( A @ zero_zero_nat ) )
         => ! [N7: nat] :
              ( member_real
              @ ( suminf_real
                @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) )
              @ ( set_or1222579329274155063t_real
                @ ( groups6591440286371151544t_real
                  @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                  @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N7 ) ) )
                @ ( groups6591440286371151544t_real
                  @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                  @ ( set_ord_lessThan_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N7 ) @ one_one_nat ) ) ) ) ) ) ) ) ).

% summable_Leibniz(2)
thf(fact_2775_summable__Leibniz_I3_J,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ( topolo6980174941875973593q_real @ A )
       => ( ( ord_less_real @ ( A @ zero_zero_nat ) @ zero_zero_real )
         => ! [N7: nat] :
              ( member_real
              @ ( suminf_real
                @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) )
              @ ( set_or1222579329274155063t_real
                @ ( groups6591440286371151544t_real
                  @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                  @ ( set_ord_lessThan_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N7 ) @ one_one_nat ) ) )
                @ ( groups6591440286371151544t_real
                  @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                  @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N7 ) ) ) ) ) ) ) ) ).

% summable_Leibniz(3)
thf(fact_2776_filterlim__Suc,axiom,
    filterlim_nat_nat @ suc @ at_top_nat @ at_top_nat ).

% filterlim_Suc
thf(fact_2777_mult__nat__left__at__top,axiom,
    ! [C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ C )
     => ( filterlim_nat_nat @ ( times_times_nat @ C ) @ at_top_nat @ at_top_nat ) ) ).

% mult_nat_left_at_top
thf(fact_2778_mult__nat__right__at__top,axiom,
    ! [C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ C )
     => ( filterlim_nat_nat
        @ ^ [X4: nat] : ( times_times_nat @ X4 @ C )
        @ at_top_nat
        @ at_top_nat ) ) ).

% mult_nat_right_at_top
thf(fact_2779_monoseq__convergent,axiom,
    ! [X8: nat > real,B2: real] :
      ( ( topolo6980174941875973593q_real @ X8 )
     => ( ! [I3: nat] : ( ord_less_eq_real @ ( abs_abs_real @ ( X8 @ I3 ) ) @ B2 )
       => ~ ! [L5: real] :
              ~ ( filterlim_nat_real @ X8 @ ( topolo2815343760600316023s_real @ L5 ) @ at_top_nat ) ) ) ).

% monoseq_convergent
thf(fact_2780_LIMSEQ__root,axiom,
    ( filterlim_nat_real
    @ ^ [N2: nat] : ( root @ N2 @ ( semiri5074537144036343181t_real @ N2 ) )
    @ ( topolo2815343760600316023s_real @ one_one_real )
    @ at_top_nat ) ).

% LIMSEQ_root
thf(fact_2781_nested__sequence__unique,axiom,
    ! [F: nat > real,G: nat > real] :
      ( ! [N4: nat] : ( ord_less_eq_real @ ( F @ N4 ) @ ( F @ ( suc @ N4 ) ) )
     => ( ! [N4: nat] : ( ord_less_eq_real @ ( G @ ( suc @ N4 ) ) @ ( G @ N4 ) )
       => ( ! [N4: nat] : ( ord_less_eq_real @ ( F @ N4 ) @ ( G @ N4 ) )
         => ( ( filterlim_nat_real
              @ ^ [N2: nat] : ( minus_minus_real @ ( F @ N2 ) @ ( G @ N2 ) )
              @ ( topolo2815343760600316023s_real @ zero_zero_real )
              @ at_top_nat )
           => ? [L3: real] :
                ( ! [N7: nat] : ( ord_less_eq_real @ ( F @ N7 ) @ L3 )
                & ( filterlim_nat_real @ F @ ( topolo2815343760600316023s_real @ L3 ) @ at_top_nat )
                & ! [N7: nat] : ( ord_less_eq_real @ L3 @ ( G @ N7 ) )
                & ( filterlim_nat_real @ G @ ( topolo2815343760600316023s_real @ L3 ) @ at_top_nat ) ) ) ) ) ) ).

% nested_sequence_unique
thf(fact_2782_LIMSEQ__inverse__zero,axiom,
    ! [X8: nat > real] :
      ( ! [R3: real] :
        ? [N5: nat] :
        ! [N4: nat] :
          ( ( ord_less_eq_nat @ N5 @ N4 )
         => ( ord_less_real @ R3 @ ( X8 @ N4 ) ) )
     => ( filterlim_nat_real
        @ ^ [N2: nat] : ( inverse_inverse_real @ ( X8 @ N2 ) )
        @ ( topolo2815343760600316023s_real @ zero_zero_real )
        @ at_top_nat ) ) ).

% LIMSEQ_inverse_zero
thf(fact_2783_lim__inverse__n_H,axiom,
    ( filterlim_nat_real
    @ ^ [N2: nat] : ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ N2 ) )
    @ ( topolo2815343760600316023s_real @ zero_zero_real )
    @ at_top_nat ) ).

% lim_inverse_n'
thf(fact_2784_LIMSEQ__root__const,axiom,
    ! [C: real] :
      ( ( ord_less_real @ zero_zero_real @ C )
     => ( filterlim_nat_real
        @ ^ [N2: nat] : ( root @ N2 @ C )
        @ ( topolo2815343760600316023s_real @ one_one_real )
        @ at_top_nat ) ) ).

% LIMSEQ_root_const
thf(fact_2785_LIMSEQ__inverse__real__of__nat,axiom,
    ( filterlim_nat_real
    @ ^ [N2: nat] : ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ ( suc @ N2 ) ) )
    @ ( topolo2815343760600316023s_real @ zero_zero_real )
    @ at_top_nat ) ).

% LIMSEQ_inverse_real_of_nat
thf(fact_2786_LIMSEQ__inverse__real__of__nat__add,axiom,
    ! [R2: real] :
      ( filterlim_nat_real
      @ ^ [N2: nat] : ( plus_plus_real @ R2 @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ ( suc @ N2 ) ) ) )
      @ ( topolo2815343760600316023s_real @ R2 )
      @ at_top_nat ) ).

% LIMSEQ_inverse_real_of_nat_add
thf(fact_2787_increasing__LIMSEQ,axiom,
    ! [F: nat > real,L2: real] :
      ( ! [N4: nat] : ( ord_less_eq_real @ ( F @ N4 ) @ ( F @ ( suc @ N4 ) ) )
     => ( ! [N4: nat] : ( ord_less_eq_real @ ( F @ N4 ) @ L2 )
       => ( ! [E2: real] :
              ( ( ord_less_real @ zero_zero_real @ E2 )
             => ? [N7: nat] : ( ord_less_eq_real @ L2 @ ( plus_plus_real @ ( F @ N7 ) @ E2 ) ) )
         => ( filterlim_nat_real @ F @ ( topolo2815343760600316023s_real @ L2 ) @ at_top_nat ) ) ) ) ).

% increasing_LIMSEQ
thf(fact_2788_LIMSEQ__realpow__zero,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_real @ X @ one_one_real )
       => ( filterlim_nat_real @ ( power_power_real @ X ) @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat ) ) ) ).

% LIMSEQ_realpow_zero
thf(fact_2789_LIMSEQ__divide__realpow__zero,axiom,
    ! [X: real,A: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( filterlim_nat_real
        @ ^ [N2: nat] : ( divide_divide_real @ A @ ( power_power_real @ X @ N2 ) )
        @ ( topolo2815343760600316023s_real @ zero_zero_real )
        @ at_top_nat ) ) ).

% LIMSEQ_divide_realpow_zero
thf(fact_2790_LIMSEQ__abs__realpow__zero2,axiom,
    ! [C: real] :
      ( ( ord_less_real @ ( abs_abs_real @ C ) @ one_one_real )
     => ( filterlim_nat_real @ ( power_power_real @ C ) @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat ) ) ).

% LIMSEQ_abs_realpow_zero2
thf(fact_2791_LIMSEQ__abs__realpow__zero,axiom,
    ! [C: real] :
      ( ( ord_less_real @ ( abs_abs_real @ C ) @ one_one_real )
     => ( filterlim_nat_real @ ( power_power_real @ ( abs_abs_real @ C ) ) @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat ) ) ).

% LIMSEQ_abs_realpow_zero
thf(fact_2792_LIMSEQ__inverse__realpow__zero,axiom,
    ! [X: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ( filterlim_nat_real
        @ ^ [N2: nat] : ( inverse_inverse_real @ ( power_power_real @ X @ N2 ) )
        @ ( topolo2815343760600316023s_real @ zero_zero_real )
        @ at_top_nat ) ) ).

% LIMSEQ_inverse_realpow_zero
thf(fact_2793_LIMSEQ__inverse__real__of__nat__add__minus,axiom,
    ! [R2: real] :
      ( filterlim_nat_real
      @ ^ [N2: nat] : ( plus_plus_real @ R2 @ ( uminus_uminus_real @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ ( suc @ N2 ) ) ) ) )
      @ ( topolo2815343760600316023s_real @ R2 )
      @ at_top_nat ) ).

% LIMSEQ_inverse_real_of_nat_add_minus
thf(fact_2794_tendsto__exp__limit__sequentially,axiom,
    ! [X: real] :
      ( filterlim_nat_real
      @ ^ [N2: nat] : ( power_power_real @ ( plus_plus_real @ one_one_real @ ( divide_divide_real @ X @ ( semiri5074537144036343181t_real @ N2 ) ) ) @ N2 )
      @ ( topolo2815343760600316023s_real @ ( exp_real @ X ) )
      @ at_top_nat ) ).

% tendsto_exp_limit_sequentially
thf(fact_2795_LIMSEQ__inverse__real__of__nat__add__minus__mult,axiom,
    ! [R2: real] :
      ( filterlim_nat_real
      @ ^ [N2: nat] : ( times_times_real @ R2 @ ( plus_plus_real @ one_one_real @ ( uminus_uminus_real @ ( inverse_inverse_real @ ( semiri5074537144036343181t_real @ ( suc @ N2 ) ) ) ) ) )
      @ ( topolo2815343760600316023s_real @ R2 )
      @ at_top_nat ) ).

% LIMSEQ_inverse_real_of_nat_add_minus_mult
thf(fact_2796_summable__Leibniz_I1_J,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ( topolo6980174941875973593q_real @ A )
       => ( summable_real
          @ ^ [N2: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N2 ) @ ( A @ N2 ) ) ) ) ) ).

% summable_Leibniz(1)
thf(fact_2797_summable,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ! [N4: nat] : ( ord_less_eq_real @ zero_zero_real @ ( A @ N4 ) )
       => ( ! [N4: nat] : ( ord_less_eq_real @ ( A @ ( suc @ N4 ) ) @ ( A @ N4 ) )
         => ( summable_real
            @ ^ [N2: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N2 ) @ ( A @ N2 ) ) ) ) ) ) ).

% summable
thf(fact_2798_cos__diff__limit__1,axiom,
    ! [Theta: nat > real,Theta2: real] :
      ( ( filterlim_nat_real
        @ ^ [J3: nat] : ( cos_real @ ( minus_minus_real @ ( Theta @ J3 ) @ Theta2 ) )
        @ ( topolo2815343760600316023s_real @ one_one_real )
        @ at_top_nat )
     => ~ ! [K2: nat > int] :
            ~ ( filterlim_nat_real
              @ ^ [J3: nat] : ( minus_minus_real @ ( Theta @ J3 ) @ ( times_times_real @ ( ring_1_of_int_real @ ( K2 @ J3 ) ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) )
              @ ( topolo2815343760600316023s_real @ Theta2 )
              @ at_top_nat ) ) ).

% cos_diff_limit_1
thf(fact_2799_cos__limit__1,axiom,
    ! [Theta: nat > real] :
      ( ( filterlim_nat_real
        @ ^ [J3: nat] : ( cos_real @ ( Theta @ J3 ) )
        @ ( topolo2815343760600316023s_real @ one_one_real )
        @ at_top_nat )
     => ? [K2: nat > int] :
          ( filterlim_nat_real
          @ ^ [J3: nat] : ( minus_minus_real @ ( Theta @ J3 ) @ ( times_times_real @ ( ring_1_of_int_real @ ( K2 @ J3 ) ) @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ pi ) ) )
          @ ( topolo2815343760600316023s_real @ zero_zero_real )
          @ at_top_nat ) ) ).

% cos_limit_1
thf(fact_2800_summable__Leibniz_I4_J,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ( topolo6980174941875973593q_real @ A )
       => ( filterlim_nat_real
          @ ^ [N2: nat] :
              ( groups6591440286371151544t_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
              @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) )
          @ ( topolo2815343760600316023s_real
            @ ( suminf_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) ) )
          @ at_top_nat ) ) ) ).

% summable_Leibniz(4)
thf(fact_2801_zeroseq__arctan__series,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ ( abs_abs_real @ X ) @ one_one_real )
     => ( filterlim_nat_real
        @ ^ [N2: nat] : ( times_times_real @ ( divide_divide_real @ one_one_real @ ( semiri5074537144036343181t_real @ ( plus_plus_nat @ ( times_times_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) @ ( power_power_real @ X @ ( plus_plus_nat @ ( times_times_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) )
        @ ( topolo2815343760600316023s_real @ zero_zero_real )
        @ at_top_nat ) ) ).

% zeroseq_arctan_series
thf(fact_2802_summable__Leibniz_H_I3_J,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ! [N4: nat] : ( ord_less_eq_real @ zero_zero_real @ ( A @ N4 ) )
       => ( ! [N4: nat] : ( ord_less_eq_real @ ( A @ ( suc @ N4 ) ) @ ( A @ N4 ) )
         => ( filterlim_nat_real
            @ ^ [N2: nat] :
                ( groups6591440286371151544t_real
                @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) )
            @ ( topolo2815343760600316023s_real
              @ ( suminf_real
                @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) ) )
            @ at_top_nat ) ) ) ) ).

% summable_Leibniz'(3)
thf(fact_2803_summable__Leibniz_H_I2_J,axiom,
    ! [A: nat > real,N: nat] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ! [N4: nat] : ( ord_less_eq_real @ zero_zero_real @ ( A @ N4 ) )
       => ( ! [N4: nat] : ( ord_less_eq_real @ ( A @ ( suc @ N4 ) ) @ ( A @ N4 ) )
         => ( ord_less_eq_real
            @ ( groups6591440286371151544t_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
              @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
            @ ( suminf_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) ) ) ) ) ) ).

% summable_Leibniz'(2)
thf(fact_2804_sums__alternating__upper__lower,axiom,
    ! [A: nat > real] :
      ( ! [N4: nat] : ( ord_less_eq_real @ ( A @ ( suc @ N4 ) ) @ ( A @ N4 ) )
     => ( ! [N4: nat] : ( ord_less_eq_real @ zero_zero_real @ ( A @ N4 ) )
       => ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
         => ? [L3: real] :
              ( ! [N7: nat] :
                  ( ord_less_eq_real
                  @ ( groups6591440286371151544t_real
                    @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                    @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N7 ) ) )
                  @ L3 )
              & ( filterlim_nat_real
                @ ^ [N2: nat] :
                    ( groups6591440286371151544t_real
                    @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                    @ ( set_ord_lessThan_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) )
                @ ( topolo2815343760600316023s_real @ L3 )
                @ at_top_nat )
              & ! [N7: nat] :
                  ( ord_less_eq_real @ L3
                  @ ( groups6591440286371151544t_real
                    @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                    @ ( set_ord_lessThan_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N7 ) @ one_one_nat ) ) ) )
              & ( filterlim_nat_real
                @ ^ [N2: nat] :
                    ( groups6591440286371151544t_real
                    @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                    @ ( set_ord_lessThan_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ one_one_nat ) ) )
                @ ( topolo2815343760600316023s_real @ L3 )
                @ at_top_nat ) ) ) ) ) ).

% sums_alternating_upper_lower
thf(fact_2805_summable__Leibniz_I5_J,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ( topolo6980174941875973593q_real @ A )
       => ( filterlim_nat_real
          @ ^ [N2: nat] :
              ( groups6591440286371151544t_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
              @ ( set_ord_lessThan_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ one_one_nat ) ) )
          @ ( topolo2815343760600316023s_real
            @ ( suminf_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) ) )
          @ at_top_nat ) ) ) ).

% summable_Leibniz(5)
thf(fact_2806_summable__Leibniz_H_I5_J,axiom,
    ! [A: nat > real] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ! [N4: nat] : ( ord_less_eq_real @ zero_zero_real @ ( A @ N4 ) )
       => ( ! [N4: nat] : ( ord_less_eq_real @ ( A @ ( suc @ N4 ) ) @ ( A @ N4 ) )
         => ( filterlim_nat_real
            @ ^ [N2: nat] :
                ( groups6591440286371151544t_real
                @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
                @ ( set_ord_lessThan_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) @ one_one_nat ) ) )
            @ ( topolo2815343760600316023s_real
              @ ( suminf_real
                @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) ) )
            @ at_top_nat ) ) ) ) ).

% summable_Leibniz'(5)
thf(fact_2807_summable__Leibniz_H_I4_J,axiom,
    ! [A: nat > real,N: nat] :
      ( ( filterlim_nat_real @ A @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ at_top_nat )
     => ( ! [N4: nat] : ( ord_less_eq_real @ zero_zero_real @ ( A @ N4 ) )
       => ( ! [N4: nat] : ( ord_less_eq_real @ ( A @ ( suc @ N4 ) ) @ ( A @ N4 ) )
         => ( ord_less_eq_real
            @ ( suminf_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) ) )
            @ ( groups6591440286371151544t_real
              @ ^ [I4: nat] : ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ I4 ) @ ( A @ I4 ) )
              @ ( set_ord_lessThan_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ one_one_nat ) ) ) ) ) ) ) ).

% summable_Leibniz'(4)
thf(fact_2808_real__bounded__linear,axiom,
    ( real_V5970128139526366754l_real
    = ( ^ [F3: real > real] :
        ? [C3: real] :
          ( F3
          = ( ^ [X4: real] : ( times_times_real @ X4 @ C3 ) ) ) ) ) ).

% real_bounded_linear
thf(fact_2809_tendsto__exp__limit__at__right,axiom,
    ! [X: real] :
      ( filterlim_real_real
      @ ^ [Y4: real] : ( powr_real @ ( plus_plus_real @ one_one_real @ ( times_times_real @ X @ Y4 ) ) @ ( divide_divide_real @ one_one_real @ Y4 ) )
      @ ( topolo2815343760600316023s_real @ ( exp_real @ X ) )
      @ ( topolo2177554685111907308n_real @ zero_zero_real @ ( set_or5849166863359141190n_real @ zero_zero_real ) ) ) ).

% tendsto_exp_limit_at_right
thf(fact_2810_tendsto__arcosh__at__left__1,axiom,
    filterlim_real_real @ arcosh_real @ ( topolo2815343760600316023s_real @ zero_zero_real ) @ ( topolo2177554685111907308n_real @ one_one_real @ ( set_or5849166863359141190n_real @ one_one_real ) ) ).

% tendsto_arcosh_at_left_1
thf(fact_2811_filterlim__tan__at__right,axiom,
    filterlim_real_real @ tan_real @ at_bot_real @ ( topolo2177554685111907308n_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ ( set_or5849166863359141190n_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ) ).

% filterlim_tan_at_right
thf(fact_2812_tendsto__arctan__at__bot,axiom,
    filterlim_real_real @ arctan @ ( topolo2815343760600316023s_real @ ( uminus_uminus_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) @ at_bot_real ).

% tendsto_arctan_at_bot
thf(fact_2813_greaterThan__0,axiom,
    ( ( set_or1210151606488870762an_nat @ zero_zero_nat )
    = ( image_nat_nat @ suc @ top_top_set_nat ) ) ).

% greaterThan_0
thf(fact_2814_greaterThan__Suc,axiom,
    ! [K: nat] :
      ( ( set_or1210151606488870762an_nat @ ( suc @ K ) )
      = ( minus_minus_set_nat @ ( set_or1210151606488870762an_nat @ K ) @ ( insert_nat @ ( suc @ K ) @ bot_bot_set_nat ) ) ) ).

% greaterThan_Suc
thf(fact_2815_tanh__real__at__bot,axiom,
    filterlim_real_real @ tanh_real @ ( topolo2815343760600316023s_real @ ( uminus_uminus_real @ one_one_real ) ) @ at_bot_real ).

% tanh_real_at_bot
thf(fact_2816_artanh__real__at__right__1,axiom,
    filterlim_real_real @ artanh_real @ at_bot_real @ ( topolo2177554685111907308n_real @ ( uminus_uminus_real @ one_one_real ) @ ( set_or5849166863359141190n_real @ ( uminus_uminus_real @ one_one_real ) ) ) ).

% artanh_real_at_right_1
thf(fact_2817_DERIV__pos__imp__increasing__at__bot,axiom,
    ! [B: real,F: real > real,Flim: real] :
      ( ! [X5: real] :
          ( ( ord_less_eq_real @ X5 @ B )
         => ? [Y: real] :
              ( ( has_fi5821293074295781190e_real @ F @ Y @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
              & ( ord_less_real @ zero_zero_real @ Y ) ) )
     => ( ( filterlim_real_real @ F @ ( topolo2815343760600316023s_real @ Flim ) @ at_bot_real )
       => ( ord_less_real @ Flim @ ( F @ B ) ) ) ) ).

% DERIV_pos_imp_increasing_at_bot
thf(fact_2818_filterlim__pow__at__bot__odd,axiom,
    ! [N: nat,F: real > real,F4: filter_real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( filterlim_real_real @ F @ at_bot_real @ F4 )
       => ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
         => ( filterlim_real_real
            @ ^ [X4: real] : ( power_power_real @ ( F @ X4 ) @ N )
            @ at_bot_real
            @ F4 ) ) ) ) ).

% filterlim_pow_at_bot_odd
thf(fact_2819_filterlim__pow__at__bot__even,axiom,
    ! [N: nat,F: real > real,F4: filter_real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( filterlim_real_real @ F @ at_bot_real @ F4 )
       => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
         => ( filterlim_real_real
            @ ^ [X4: real] : ( power_power_real @ ( F @ X4 ) @ N )
            @ at_top_real
            @ F4 ) ) ) ) ).

% filterlim_pow_at_bot_even
thf(fact_2820_at__bot__le__at__infinity,axiom,
    ord_le4104064031414453916r_real @ at_bot_real @ at_infinity_real ).

% at_bot_le_at_infinity
thf(fact_2821_at__top__le__at__infinity,axiom,
    ord_le4104064031414453916r_real @ at_top_real @ at_infinity_real ).

% at_top_le_at_infinity
thf(fact_2822_sqrt__at__top,axiom,
    filterlim_real_real @ sqrt @ at_top_real @ at_top_real ).

% sqrt_at_top
thf(fact_2823_tanh__real__at__top,axiom,
    filterlim_real_real @ tanh_real @ ( topolo2815343760600316023s_real @ one_one_real ) @ at_top_real ).

% tanh_real_at_top
thf(fact_2824_artanh__real__at__left__1,axiom,
    filterlim_real_real @ artanh_real @ at_top_real @ ( topolo2177554685111907308n_real @ one_one_real @ ( set_or5984915006950818249n_real @ one_one_real ) ) ).

% artanh_real_at_left_1
thf(fact_2825_tendsto__power__div__exp__0,axiom,
    ! [K: nat] :
      ( filterlim_real_real
      @ ^ [X4: real] : ( divide_divide_real @ ( power_power_real @ X4 @ K ) @ ( exp_real @ X4 ) )
      @ ( topolo2815343760600316023s_real @ zero_zero_real )
      @ at_top_real ) ).

% tendsto_power_div_exp_0
thf(fact_2826_tendsto__exp__limit__at__top,axiom,
    ! [X: real] :
      ( filterlim_real_real
      @ ^ [Y4: real] : ( powr_real @ ( plus_plus_real @ one_one_real @ ( divide_divide_real @ X @ Y4 ) ) @ Y4 )
      @ ( topolo2815343760600316023s_real @ ( exp_real @ X ) )
      @ at_top_real ) ).

% tendsto_exp_limit_at_top
thf(fact_2827_filterlim__tan__at__left,axiom,
    filterlim_real_real @ tan_real @ at_top_real @ ( topolo2177554685111907308n_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) @ ( set_or5984915006950818249n_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ) ).

% filterlim_tan_at_left
thf(fact_2828_DERIV__neg__imp__decreasing__at__top,axiom,
    ! [B: real,F: real > real,Flim: real] :
      ( ! [X5: real] :
          ( ( ord_less_eq_real @ B @ X5 )
         => ? [Y: real] :
              ( ( has_fi5821293074295781190e_real @ F @ Y @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) )
              & ( ord_less_real @ Y @ zero_zero_real ) ) )
     => ( ( filterlim_real_real @ F @ ( topolo2815343760600316023s_real @ Flim ) @ at_top_real )
       => ( ord_less_real @ Flim @ ( F @ B ) ) ) ) ).

% DERIV_neg_imp_decreasing_at_top
thf(fact_2829_tendsto__arctan__at__top,axiom,
    filterlim_real_real @ arctan @ ( topolo2815343760600316023s_real @ ( divide_divide_real @ pi @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) @ at_top_real ).

% tendsto_arctan_at_top
thf(fact_2830_GMVT,axiom,
    ! [A: real,B: real,F: real > real,G: real > real] :
      ( ( ord_less_real @ A @ B )
     => ( ! [X5: real] :
            ( ( ( ord_less_eq_real @ A @ X5 )
              & ( ord_less_eq_real @ X5 @ B ) )
           => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) @ F ) )
       => ( ! [X5: real] :
              ( ( ( ord_less_real @ A @ X5 )
                & ( ord_less_real @ X5 @ B ) )
             => ( differ6690327859849518006l_real @ F @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) ) )
         => ( ! [X5: real] :
                ( ( ( ord_less_eq_real @ A @ X5 )
                  & ( ord_less_eq_real @ X5 @ B ) )
               => ( topolo4422821103128117721l_real @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) @ G ) )
           => ( ! [X5: real] :
                  ( ( ( ord_less_real @ A @ X5 )
                    & ( ord_less_real @ X5 @ B ) )
                 => ( differ6690327859849518006l_real @ G @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) ) )
             => ? [G_c: real,F_c: real,C2: real] :
                  ( ( has_fi5821293074295781190e_real @ G @ G_c @ ( topolo2177554685111907308n_real @ C2 @ top_top_set_real ) )
                  & ( has_fi5821293074295781190e_real @ F @ F_c @ ( topolo2177554685111907308n_real @ C2 @ top_top_set_real ) )
                  & ( ord_less_real @ A @ C2 )
                  & ( ord_less_real @ C2 @ B )
                  & ( ( times_times_real @ ( minus_minus_real @ ( F @ B ) @ ( F @ A ) ) @ G_c )
                    = ( times_times_real @ ( minus_minus_real @ ( G @ B ) @ ( G @ A ) ) @ F_c ) ) ) ) ) ) ) ) ).

% GMVT
thf(fact_2831_eventually__sequentially__Suc,axiom,
    ! [P: nat > $o] :
      ( ( eventually_nat
        @ ^ [I4: nat] : ( P @ ( suc @ I4 ) )
        @ at_top_nat )
      = ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentially_Suc
thf(fact_2832_eventually__sequentially__seg,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( eventually_nat
        @ ^ [N2: nat] : ( P @ ( plus_plus_nat @ N2 @ K ) )
        @ at_top_nat )
      = ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentially_seg
thf(fact_2833_sequentially__offset,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( eventually_nat @ P @ at_top_nat )
     => ( eventually_nat
        @ ^ [I4: nat] : ( P @ ( plus_plus_nat @ I4 @ K ) )
        @ at_top_nat ) ) ).

% sequentially_offset
thf(fact_2834_le__sequentially,axiom,
    ! [F4: filter_nat] :
      ( ( ord_le2510731241096832064er_nat @ F4 @ at_top_nat )
      = ( ! [N6: nat] : ( eventually_nat @ ( ord_less_eq_nat @ N6 ) @ F4 ) ) ) ).

% le_sequentially
thf(fact_2835_eventually__sequentially,axiom,
    ! [P: nat > $o] :
      ( ( eventually_nat @ P @ at_top_nat )
      = ( ? [N6: nat] :
          ! [N2: nat] :
            ( ( ord_less_eq_nat @ N6 @ N2 )
           => ( P @ N2 ) ) ) ) ).

% eventually_sequentially
thf(fact_2836_eventually__sequentiallyI,axiom,
    ! [C: nat,P: nat > $o] :
      ( ! [X5: nat] :
          ( ( ord_less_eq_nat @ C @ X5 )
         => ( P @ X5 ) )
     => ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentiallyI
thf(fact_2837_eventually__at__right__to__0,axiom,
    ! [P: real > $o,A: real] :
      ( ( eventually_real @ P @ ( topolo2177554685111907308n_real @ A @ ( set_or5849166863359141190n_real @ A ) ) )
      = ( eventually_real
        @ ^ [X4: real] : ( P @ ( plus_plus_real @ X4 @ A ) )
        @ ( topolo2177554685111907308n_real @ zero_zero_real @ ( set_or5849166863359141190n_real @ zero_zero_real ) ) ) ) ).

% eventually_at_right_to_0
thf(fact_2838_Bseq__eq__bounded,axiom,
    ! [F: nat > real,A: real,B: real] :
      ( ( ord_less_eq_set_real @ ( image_nat_real @ F @ top_top_set_nat ) @ ( set_or1222579329274155063t_real @ A @ B ) )
     => ( bfun_nat_real @ F @ at_top_nat ) ) ).

% Bseq_eq_bounded
thf(fact_2839_Bseq__realpow,axiom,
    ! [X: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ord_less_eq_real @ X @ one_one_real )
       => ( bfun_nat_real @ ( power_power_real @ X ) @ at_top_nat ) ) ) ).

% Bseq_realpow
thf(fact_2840_GreatestI__ex__nat,axiom,
    ! [P: nat > $o,B: nat] :
      ( ? [X_1: nat] : ( P @ X_1 )
     => ( ! [Y3: nat] :
            ( ( P @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ( P @ ( order_Greatest_nat @ P ) ) ) ) ).

% GreatestI_ex_nat
thf(fact_2841_Greatest__le__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y3: nat] :
            ( ( P @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ( ord_less_eq_nat @ K @ ( order_Greatest_nat @ P ) ) ) ) ).

% Greatest_le_nat
thf(fact_2842_GreatestI__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y3: nat] :
            ( ( P @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ( P @ ( order_Greatest_nat @ P ) ) ) ) ).

% GreatestI_nat
thf(fact_2843_atLeastSucAtMost__greaterThanAtMost,axiom,
    ! [L2: nat,U: nat] :
      ( ( set_or1269000886237332187st_nat @ ( suc @ L2 ) @ U )
      = ( set_or6659071591806873216st_nat @ L2 @ U ) ) ).

% atLeastSucAtMost_greaterThanAtMost
thf(fact_2844_atLeast__Suc__greaterThan,axiom,
    ! [K: nat] :
      ( ( set_ord_atLeast_nat @ ( suc @ K ) )
      = ( set_or1210151606488870762an_nat @ K ) ) ).

% atLeast_Suc_greaterThan
thf(fact_2845_atLeastPlusOneAtMost__greaterThanAtMost__int,axiom,
    ! [L2: int,U: int] :
      ( ( set_or1266510415728281911st_int @ ( plus_plus_int @ L2 @ one_one_int ) @ U )
      = ( set_or6656581121297822940st_int @ L2 @ U ) ) ).

% atLeastPlusOneAtMost_greaterThanAtMost_int
thf(fact_2846_decseq__bounded,axiom,
    ! [X8: nat > real,B2: real] :
      ( ( order_9091379641038594480t_real @ X8 )
     => ( ! [I3: nat] : ( ord_less_eq_real @ B2 @ ( X8 @ I3 ) )
       => ( bfun_nat_real @ X8 @ at_top_nat ) ) ) ).

% decseq_bounded
thf(fact_2847_greaterThanAtMost__upto,axiom,
    ( set_or6656581121297822940st_int
    = ( ^ [I4: int,J3: int] : ( set_int2 @ ( upto @ ( plus_plus_int @ I4 @ one_one_int ) @ J3 ) ) ) ) ).

% greaterThanAtMost_upto
thf(fact_2848_decseq__convergent,axiom,
    ! [X8: nat > real,B2: real] :
      ( ( order_9091379641038594480t_real @ X8 )
     => ( ! [I3: nat] : ( ord_less_eq_real @ B2 @ ( X8 @ I3 ) )
       => ~ ! [L5: real] :
              ( ( filterlim_nat_real @ X8 @ ( topolo2815343760600316023s_real @ L5 ) @ at_top_nat )
             => ~ ! [I: nat] : ( ord_less_eq_real @ L5 @ ( X8 @ I ) ) ) ) ) ).

% decseq_convergent
thf(fact_2849_atLeast__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_atLeast_nat @ ( suc @ K ) )
      = ( minus_minus_set_nat @ ( set_ord_atLeast_nat @ K ) @ ( insert_nat @ K @ bot_bot_set_nat ) ) ) ).

% atLeast_Suc
thf(fact_2850_MVT,axiom,
    ! [A: real,B: real,F: real > real] :
      ( ( ord_less_real @ A @ B )
     => ( ( topolo5044208981011980120l_real @ ( set_or1222579329274155063t_real @ A @ B ) @ F )
       => ( ! [X5: real] :
              ( ( ord_less_real @ A @ X5 )
             => ( ( ord_less_real @ X5 @ B )
               => ( differ6690327859849518006l_real @ F @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) ) ) )
         => ? [L3: real,Z3: real] :
              ( ( ord_less_real @ A @ Z3 )
              & ( ord_less_real @ Z3 @ B )
              & ( has_fi5821293074295781190e_real @ F @ L3 @ ( topolo2177554685111907308n_real @ Z3 @ top_top_set_real ) )
              & ( ( minus_minus_real @ ( F @ B ) @ ( F @ A ) )
                = ( times_times_real @ ( minus_minus_real @ B @ A ) @ L3 ) ) ) ) ) ) ).

% MVT
thf(fact_2851_continuous__on__arcosh_H,axiom,
    ! [A2: set_real,F: real > real] :
      ( ( topolo5044208981011980120l_real @ A2 @ F )
     => ( ! [X5: real] :
            ( ( member_real @ X5 @ A2 )
           => ( ord_less_eq_real @ one_one_real @ ( F @ X5 ) ) )
       => ( topolo5044208981011980120l_real @ A2
          @ ^ [X4: real] : ( arcosh_real @ ( F @ X4 ) ) ) ) ) ).

% continuous_on_arcosh'
thf(fact_2852_continuous__image__closed__interval,axiom,
    ! [A: real,B: real,F: real > real] :
      ( ( ord_less_eq_real @ A @ B )
     => ( ( topolo5044208981011980120l_real @ ( set_or1222579329274155063t_real @ A @ B ) @ F )
       => ? [C2: real,D3: real] :
            ( ( ( image_real_real @ F @ ( set_or1222579329274155063t_real @ A @ B ) )
              = ( set_or1222579329274155063t_real @ C2 @ D3 ) )
            & ( ord_less_eq_real @ C2 @ D3 ) ) ) ) ).

% continuous_image_closed_interval
thf(fact_2853_continuous__on__arcosh,axiom,
    ! [A2: set_real] :
      ( ( ord_less_eq_set_real @ A2 @ ( set_ord_atLeast_real @ one_one_real ) )
     => ( topolo5044208981011980120l_real @ A2 @ arcosh_real ) ) ).

% continuous_on_arcosh
thf(fact_2854_continuous__on__arccos_H,axiom,
    topolo5044208981011980120l_real @ ( set_or1222579329274155063t_real @ ( uminus_uminus_real @ one_one_real ) @ one_one_real ) @ arccos ).

% continuous_on_arccos'
thf(fact_2855_continuous__on__arcsin_H,axiom,
    topolo5044208981011980120l_real @ ( set_or1222579329274155063t_real @ ( uminus_uminus_real @ one_one_real ) @ one_one_real ) @ arcsin ).

% continuous_on_arcsin'
thf(fact_2856_continuous__on__artanh_H,axiom,
    ! [A2: set_real,F: real > real] :
      ( ( topolo5044208981011980120l_real @ A2 @ F )
     => ( ! [X5: real] :
            ( ( member_real @ X5 @ A2 )
           => ( member_real @ ( F @ X5 ) @ ( set_or1633881224788618240n_real @ ( uminus_uminus_real @ one_one_real ) @ one_one_real ) ) )
       => ( topolo5044208981011980120l_real @ A2
          @ ^ [X4: real] : ( artanh_real @ ( F @ X4 ) ) ) ) ) ).

% continuous_on_artanh'
thf(fact_2857_continuous__on__artanh,axiom,
    ! [A2: set_real] :
      ( ( ord_less_eq_set_real @ A2 @ ( set_or1633881224788618240n_real @ ( uminus_uminus_real @ one_one_real ) @ one_one_real ) )
     => ( topolo5044208981011980120l_real @ A2 @ artanh_real ) ) ).

% continuous_on_artanh
thf(fact_2858_DERIV__isconst2,axiom,
    ! [A: real,B: real,F: real > real,X: real] :
      ( ( ord_less_real @ A @ B )
     => ( ( topolo5044208981011980120l_real @ ( set_or1222579329274155063t_real @ A @ B ) @ F )
       => ( ! [X5: real] :
              ( ( ord_less_real @ A @ X5 )
             => ( ( ord_less_real @ X5 @ B )
               => ( has_fi5821293074295781190e_real @ F @ zero_zero_real @ ( topolo2177554685111907308n_real @ X5 @ top_top_set_real ) ) ) )
         => ( ( ord_less_eq_real @ A @ X )
           => ( ( ord_less_eq_real @ X @ B )
             => ( ( F @ X )
                = ( F @ A ) ) ) ) ) ) ) ).

% DERIV_isconst2
thf(fact_2859_less__eq__int_Orep__eq,axiom,
    ( ord_less_eq_int
    = ( ^ [X4: int,Xa4: int] :
          ( produc8739625826339149834_nat_o
          @ ^ [Y4: nat,Z5: nat] :
              ( produc6081775807080527818_nat_o
              @ ^ [U3: nat,V4: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ Y4 @ V4 ) @ ( plus_plus_nat @ U3 @ Z5 ) ) )
          @ ( rep_Integ @ X4 )
          @ ( rep_Integ @ Xa4 ) ) ) ) ).

% less_eq_int.rep_eq
thf(fact_2860_less__int_Orep__eq,axiom,
    ( ord_less_int
    = ( ^ [X4: int,Xa4: int] :
          ( produc8739625826339149834_nat_o
          @ ^ [Y4: nat,Z5: nat] :
              ( produc6081775807080527818_nat_o
              @ ^ [U3: nat,V4: nat] : ( ord_less_nat @ ( plus_plus_nat @ Y4 @ V4 ) @ ( plus_plus_nat @ U3 @ Z5 ) ) )
          @ ( rep_Integ @ X4 )
          @ ( rep_Integ @ Xa4 ) ) ) ) ).

% less_int.rep_eq
thf(fact_2861_mono__times__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( order_mono_nat_nat @ ( times_times_nat @ N ) ) ) ).

% mono_times_nat
thf(fact_2862_mono__Suc,axiom,
    order_mono_nat_nat @ suc ).

% mono_Suc
thf(fact_2863_incseq__bounded,axiom,
    ! [X8: nat > real,B2: real] :
      ( ( order_mono_nat_real @ X8 )
     => ( ! [I3: nat] : ( ord_less_eq_real @ ( X8 @ I3 ) @ B2 )
       => ( bfun_nat_real @ X8 @ at_top_nat ) ) ) ).

% incseq_bounded
thf(fact_2864_incseq__convergent,axiom,
    ! [X8: nat > real,B2: real] :
      ( ( order_mono_nat_real @ X8 )
     => ( ! [I3: nat] : ( ord_less_eq_real @ ( X8 @ I3 ) @ B2 )
       => ~ ! [L5: real] :
              ( ( filterlim_nat_real @ X8 @ ( topolo2815343760600316023s_real @ L5 ) @ at_top_nat )
             => ~ ! [I: nat] : ( ord_less_eq_real @ ( X8 @ I ) @ L5 ) ) ) ) ).

% incseq_convergent
thf(fact_2865_mono__ge2__power__minus__self,axiom,
    ! [K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( order_mono_nat_nat
        @ ^ [M6: nat] : ( minus_minus_nat @ ( power_power_nat @ K @ M6 ) @ M6 ) ) ) ).

% mono_ge2_power_minus_self
thf(fact_2866_inj__sgn__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( inj_on_real_real
        @ ^ [Y4: real] : ( times_times_real @ ( sgn_sgn_real @ Y4 ) @ ( power_power_real @ ( abs_abs_real @ Y4 ) @ N ) )
        @ top_top_set_real ) ) ).

% inj_sgn_power
thf(fact_2867_log__inj,axiom,
    ! [B: real] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( inj_on_real_real @ ( log @ B ) @ ( set_or5849166863359141190n_real @ zero_zero_real ) ) ) ).

% log_inj
thf(fact_2868_inj__on__diff__nat,axiom,
    ! [N3: set_nat,K: nat] :
      ( ! [N4: nat] :
          ( ( member_nat @ N4 @ N3 )
         => ( ord_less_eq_nat @ K @ N4 ) )
     => ( inj_on_nat_nat
        @ ^ [N2: nat] : ( minus_minus_nat @ N2 @ K )
        @ N3 ) ) ).

% inj_on_diff_nat
thf(fact_2869_inj__Suc,axiom,
    ! [N3: set_nat] : ( inj_on_nat_nat @ suc @ N3 ) ).

% inj_Suc
thf(fact_2870_summable__reindex,axiom,
    ! [F: nat > real,G: nat > nat] :
      ( ( summable_real @ F )
     => ( ( inj_on_nat_nat @ G @ top_top_set_nat )
       => ( ! [X5: nat] : ( ord_less_eq_real @ zero_zero_real @ ( F @ X5 ) )
         => ( summable_real @ ( comp_nat_real_nat @ F @ G ) ) ) ) ) ).

% summable_reindex
thf(fact_2871_suminf__reindex__mono,axiom,
    ! [F: nat > real,G: nat > nat] :
      ( ( summable_real @ F )
     => ( ( inj_on_nat_nat @ G @ top_top_set_nat )
       => ( ! [X5: nat] : ( ord_less_eq_real @ zero_zero_real @ ( F @ X5 ) )
         => ( ord_less_eq_real @ ( suminf_real @ ( comp_nat_real_nat @ F @ G ) ) @ ( suminf_real @ F ) ) ) ) ) ).

% suminf_reindex_mono
thf(fact_2872_inj__on__char__of__nat,axiom,
    inj_on_nat_char @ unique3096191561947761185of_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% inj_on_char_of_nat
thf(fact_2873_suminf__reindex,axiom,
    ! [F: nat > real,G: nat > nat] :
      ( ( summable_real @ F )
     => ( ( inj_on_nat_nat @ G @ top_top_set_nat )
       => ( ! [X5: nat] : ( ord_less_eq_real @ zero_zero_real @ ( F @ X5 ) )
         => ( ! [X5: nat] :
                ( ~ ( member_nat @ X5 @ ( image_nat_nat @ G @ top_top_set_nat ) )
               => ( ( F @ X5 )
                  = zero_zero_real ) )
           => ( ( suminf_real @ ( comp_nat_real_nat @ F @ G ) )
              = ( suminf_real @ F ) ) ) ) ) ) ).

% suminf_reindex
thf(fact_2874_nonneg__incseq__Bseq__subseq__iff,axiom,
    ! [F: nat > real,G: nat > nat] :
      ( ! [X5: nat] : ( ord_less_eq_real @ zero_zero_real @ ( F @ X5 ) )
     => ( ( order_mono_nat_real @ F )
       => ( ( order_5726023648592871131at_nat @ G )
         => ( ( bfun_nat_real
              @ ^ [X4: nat] : ( F @ ( G @ X4 ) )
              @ at_top_nat )
            = ( bfun_nat_real @ F @ at_top_nat ) ) ) ) ) ).

% nonneg_incseq_Bseq_subseq_iff
thf(fact_2875_strict__mono__imp__increasing,axiom,
    ! [F: nat > nat,N: nat] :
      ( ( order_5726023648592871131at_nat @ F )
     => ( ord_less_eq_nat @ N @ ( F @ N ) ) ) ).

% strict_mono_imp_increasing
thf(fact_2876_powr__real__of__int_H,axiom,
    ! [X: real,N: int] :
      ( ( ord_less_eq_real @ zero_zero_real @ X )
     => ( ( ( X != zero_zero_real )
          | ( ord_less_int @ zero_zero_int @ N ) )
       => ( ( powr_real @ X @ ( ring_1_of_int_real @ N ) )
          = ( power_int_real @ X @ N ) ) ) ) ).

% powr_real_of_int'
thf(fact_2877_num__of__nat_Osimps_I2_J,axiom,
    ! [N: nat] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( suc @ N ) )
          = ( inc @ ( num_of_nat @ N ) ) ) )
      & ( ~ ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( suc @ N ) )
          = one ) ) ) ).

% num_of_nat.simps(2)
thf(fact_2878_num__of__nat__numeral__eq,axiom,
    ! [Q2: num] :
      ( ( num_of_nat @ ( numeral_numeral_nat @ Q2 ) )
      = Q2 ) ).

% num_of_nat_numeral_eq
thf(fact_2879_num__of__nat_Osimps_I1_J,axiom,
    ( ( num_of_nat @ zero_zero_nat )
    = one ) ).

% num_of_nat.simps(1)
thf(fact_2880_numeral__num__of__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( numeral_numeral_nat @ ( num_of_nat @ N ) )
        = N ) ) ).

% numeral_num_of_nat
thf(fact_2881_num__of__nat__One,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ one_one_nat )
     => ( ( num_of_nat @ N )
        = one ) ) ).

% num_of_nat_One
thf(fact_2882_num__of__nat__double,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( num_of_nat @ ( plus_plus_nat @ N @ N ) )
        = ( bit0 @ ( num_of_nat @ N ) ) ) ) ).

% num_of_nat_double
thf(fact_2883_num__of__nat__plus__distrib,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( plus_plus_nat @ M @ N ) )
          = ( plus_plus_num @ ( num_of_nat @ M ) @ ( num_of_nat @ N ) ) ) ) ) ).

% num_of_nat_plus_distrib
thf(fact_2884_pred__nat__def,axiom,
    ( pred_nat
    = ( collec3392354462482085612at_nat
      @ ( produc6081775807080527818_nat_o
        @ ^ [M6: nat,N2: nat] :
            ( N2
            = ( suc @ M6 ) ) ) ) ) ).

% pred_nat_def
thf(fact_2885_pow_Osimps_I3_J,axiom,
    ! [X: num,Y2: num] :
      ( ( pow @ X @ ( bit1 @ Y2 ) )
      = ( times_times_num @ ( sqr @ ( pow @ X @ Y2 ) ) @ X ) ) ).

% pow.simps(3)
thf(fact_2886_sorted__list__of__set__lessThan__Suc,axiom,
    ! [K: nat] :
      ( ( linord2614967742042102400et_nat @ ( set_ord_lessThan_nat @ ( suc @ K ) ) )
      = ( append_nat @ ( linord2614967742042102400et_nat @ ( set_ord_lessThan_nat @ K ) ) @ ( cons_nat @ K @ nil_nat ) ) ) ).

% sorted_list_of_set_lessThan_Suc
thf(fact_2887_sorted__list__of__set__atMost__Suc,axiom,
    ! [K: nat] :
      ( ( linord2614967742042102400et_nat @ ( set_ord_atMost_nat @ ( suc @ K ) ) )
      = ( append_nat @ ( linord2614967742042102400et_nat @ ( set_ord_atMost_nat @ K ) ) @ ( cons_nat @ ( suc @ K ) @ nil_nat ) ) ) ).

% sorted_list_of_set_atMost_Suc
thf(fact_2888_sqr_Osimps_I2_J,axiom,
    ! [N: num] :
      ( ( sqr @ ( bit0 @ N ) )
      = ( bit0 @ ( bit0 @ ( sqr @ N ) ) ) ) ).

% sqr.simps(2)
thf(fact_2889_sqr_Osimps_I1_J,axiom,
    ( ( sqr @ one )
    = one ) ).

% sqr.simps(1)
thf(fact_2890_sqr__conv__mult,axiom,
    ( sqr
    = ( ^ [X4: num] : ( times_times_num @ X4 @ X4 ) ) ) ).

% sqr_conv_mult
thf(fact_2891_sorted__list__of__set__greaterThanAtMost,axiom,
    ! [I2: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( suc @ I2 ) @ J )
     => ( ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ I2 @ J ) )
        = ( cons_nat @ ( suc @ I2 ) @ ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ ( suc @ I2 ) @ J ) ) ) ) ) ).

% sorted_list_of_set_greaterThanAtMost
thf(fact_2892_sorted__list__of__set__greaterThanLessThan,axiom,
    ! [I2: nat,J: nat] :
      ( ( ord_less_nat @ ( suc @ I2 ) @ J )
     => ( ( linord2614967742042102400et_nat @ ( set_or5834768355832116004an_nat @ I2 @ J ) )
        = ( cons_nat @ ( suc @ I2 ) @ ( linord2614967742042102400et_nat @ ( set_or5834768355832116004an_nat @ ( suc @ I2 ) @ J ) ) ) ) ) ).

% sorted_list_of_set_greaterThanLessThan
thf(fact_2893_pow_Osimps_I2_J,axiom,
    ! [X: num,Y2: num] :
      ( ( pow @ X @ ( bit0 @ Y2 ) )
      = ( sqr @ ( pow @ X @ Y2 ) ) ) ).

% pow.simps(2)
thf(fact_2894_sqr_Osimps_I3_J,axiom,
    ! [N: num] :
      ( ( sqr @ ( bit1 @ N ) )
      = ( bit1 @ ( bit0 @ ( plus_plus_num @ ( sqr @ N ) @ N ) ) ) ) ).

% sqr.simps(3)
thf(fact_2895_nth__sorted__list__of__set__greaterThanAtMost,axiom,
    ! [N: nat,J: nat,I2: nat] :
      ( ( ord_less_nat @ N @ ( minus_minus_nat @ J @ I2 ) )
     => ( ( nth_nat @ ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ I2 @ J ) ) @ N )
        = ( suc @ ( plus_plus_nat @ I2 @ N ) ) ) ) ).

% nth_sorted_list_of_set_greaterThanAtMost
thf(fact_2896_nth__sorted__list__of__set__greaterThanLessThan,axiom,
    ! [N: nat,J: nat,I2: nat] :
      ( ( ord_less_nat @ N @ ( minus_minus_nat @ J @ ( suc @ I2 ) ) )
     => ( ( nth_nat @ ( linord2614967742042102400et_nat @ ( set_or5834768355832116004an_nat @ I2 @ J ) ) @ N )
        = ( suc @ ( plus_plus_nat @ I2 @ N ) ) ) ) ).

% nth_sorted_list_of_set_greaterThanLessThan
thf(fact_2897_VEBT__internal_Ovalid_H_Oelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_VEBT_valid @ X @ Xa2 )
        = Y2 )
     => ( ( ? [Uu: $o,Uv: $o] :
              ( X
              = ( vEBT_Leaf @ Uu @ Uv ) )
         => ( Y2
            = ( Xa2 != one_one_nat ) ) )
       => ~ ! [Mima: option4927543243414619207at_nat,Deg2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
              ( ( X
                = ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) )
             => ( Y2
                = ( ~ ( ( Deg2 = Xa2 )
                      & ! [X4: vEBT_VEBT] :
                          ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                         => ( vEBT_VEBT_valid @ X4 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                      & ( vEBT_VEBT_valid @ Summary2 @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                      & ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                        = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                      & ( case_o184042715313410164at_nat
                        @ ( ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X2 )
                          & ! [X4: vEBT_VEBT] :
                              ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                             => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                        @ ( produc6081775807080527818_nat_o
                          @ ^ [Mi3: nat,Ma3: nat] :
                              ( ( ord_less_eq_nat @ Mi3 @ Ma3 )
                              & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                              & ! [I4: nat] :
                                  ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                 => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I4 ) @ X2 ) )
                                    = ( vEBT_V8194947554948674370ptions @ Summary2 @ I4 ) ) )
                              & ( ( Mi3 = Ma3 )
                               => ! [X4: vEBT_VEBT] :
                                    ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                   => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                              & ( ( Mi3 != Ma3 )
                               => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ Ma3 )
                                  & ! [X4: nat] :
                                      ( ( ord_less_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                                     => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ X4 )
                                       => ( ( ord_less_nat @ Mi3 @ X4 )
                                          & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) )
                        @ Mima ) ) ) ) ) ) ) ).

% VEBT_internal.valid'.elims(1)
thf(fact_2898_VEBT__internal_Ovalid_H_Oelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_VEBT_valid @ X @ Xa2 )
     => ( ( ? [Uu: $o,Uv: $o] :
              ( X
              = ( vEBT_Leaf @ Uu @ Uv ) )
         => ( Xa2 != one_one_nat ) )
       => ~ ! [Mima: option4927543243414619207at_nat,Deg2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
              ( ( X
                = ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) )
             => ~ ( ( Deg2 = Xa2 )
                  & ! [X3: vEBT_VEBT] :
                      ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                     => ( vEBT_VEBT_valid @ X3 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                  & ( vEBT_VEBT_valid @ Summary2 @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                  & ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                    = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                  & ( case_o184042715313410164at_nat
                    @ ( ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X2 )
                      & ! [X4: vEBT_VEBT] :
                          ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                         => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                    @ ( produc6081775807080527818_nat_o
                      @ ^ [Mi3: nat,Ma3: nat] :
                          ( ( ord_less_eq_nat @ Mi3 @ Ma3 )
                          & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                          & ! [I4: nat] :
                              ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                             => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I4 ) @ X2 ) )
                                = ( vEBT_V8194947554948674370ptions @ Summary2 @ I4 ) ) )
                          & ( ( Mi3 = Ma3 )
                           => ! [X4: vEBT_VEBT] :
                                ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                               => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                          & ( ( Mi3 != Ma3 )
                           => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ Ma3 )
                              & ! [X4: nat] :
                                  ( ( ord_less_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                                 => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ X4 )
                                   => ( ( ord_less_nat @ Mi3 @ X4 )
                                      & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) )
                    @ Mima ) ) ) ) ) ).

% VEBT_internal.valid'.elims(2)
thf(fact_2899_VEBT__internal_Ovalid_H_Osimps_I2_J,axiom,
    ! [Mima2: option4927543243414619207at_nat,Deg: nat,TreeList2: list_VEBT_VEBT,Summary: vEBT_VEBT,Deg4: nat] :
      ( ( vEBT_VEBT_valid @ ( vEBT_Node @ Mima2 @ Deg @ TreeList2 @ Summary ) @ Deg4 )
      = ( ( Deg = Deg4 )
        & ! [X4: vEBT_VEBT] :
            ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
           => ( vEBT_VEBT_valid @ X4 @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
        & ( vEBT_VEBT_valid @ Summary @ ( minus_minus_nat @ Deg @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
        & ( ( size_s6755466524823107622T_VEBT @ TreeList2 )
          = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
        & ( case_o184042715313410164at_nat
          @ ( ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary @ X2 )
            & ! [X4: vEBT_VEBT] :
                ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
               => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
          @ ( produc6081775807080527818_nat_o
            @ ^ [Mi3: nat,Ma3: nat] :
                ( ( ord_less_eq_nat @ Mi3 @ Ma3 )
                & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg ) )
                & ! [I4: nat] :
                    ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                   => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList2 @ I4 ) @ X2 ) )
                      = ( vEBT_V8194947554948674370ptions @ Summary @ I4 ) ) )
                & ( ( Mi3 = Ma3 )
                 => ! [X4: vEBT_VEBT] :
                      ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList2 ) )
                     => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                & ( ( Mi3 != Ma3 )
                 => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList2 @ Ma3 )
                    & ! [X4: nat] :
                        ( ( ord_less_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg ) )
                       => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList2 @ X4 )
                         => ( ( ord_less_nat @ Mi3 @ X4 )
                            & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) )
          @ Mima2 ) ) ) ).

% VEBT_internal.valid'.simps(2)
thf(fact_2900_VEBT__internal_Ovalid_H_Oelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_VEBT_valid @ X @ Xa2 )
     => ( ( ? [Uu: $o,Uv: $o] :
              ( X
              = ( vEBT_Leaf @ Uu @ Uv ) )
         => ( Xa2 = one_one_nat ) )
       => ~ ! [Mima: option4927543243414619207at_nat,Deg2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
              ( ( X
                = ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) )
             => ( ( Deg2 = Xa2 )
                & ! [X5: vEBT_VEBT] :
                    ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                   => ( vEBT_VEBT_valid @ X5 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                & ( vEBT_VEBT_valid @ Summary2 @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                & ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                  = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                & ( case_o184042715313410164at_nat
                  @ ( ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X2 )
                    & ! [X4: vEBT_VEBT] :
                        ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                       => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                  @ ( produc6081775807080527818_nat_o
                    @ ^ [Mi3: nat,Ma3: nat] :
                        ( ( ord_less_eq_nat @ Mi3 @ Ma3 )
                        & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                        & ! [I4: nat] :
                            ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                           => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I4 ) @ X2 ) )
                              = ( vEBT_V8194947554948674370ptions @ Summary2 @ I4 ) ) )
                        & ( ( Mi3 = Ma3 )
                         => ! [X4: vEBT_VEBT] :
                              ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                             => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                        & ( ( Mi3 != Ma3 )
                         => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ Ma3 )
                            & ! [X4: nat] :
                                ( ( ord_less_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                               => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ X4 )
                                 => ( ( ord_less_nat @ Mi3 @ X4 )
                                    & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) )
                  @ Mima ) ) ) ) ) ).

% VEBT_internal.valid'.elims(3)
thf(fact_2901_VEBT__internal_Ovalid_H_Opelims_I1_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat,Y2: $o] :
      ( ( ( vEBT_VEBT_valid @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [Uu: $o,Uv: $o] :
              ( ( X
                = ( vEBT_Leaf @ Uu @ Uv ) )
             => ( ( Y2
                  = ( Xa2 = one_one_nat ) )
               => ~ ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ Uu @ Uv ) @ Xa2 ) ) ) )
         => ~ ! [Mima: option4927543243414619207at_nat,Deg2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) )
               => ( ( Y2
                    = ( ( Deg2 = Xa2 )
                      & ! [X4: vEBT_VEBT] :
                          ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                         => ( vEBT_VEBT_valid @ X4 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                      & ( vEBT_VEBT_valid @ Summary2 @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                      & ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                        = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                      & ( case_o184042715313410164at_nat
                        @ ( ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X2 )
                          & ! [X4: vEBT_VEBT] :
                              ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                             => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                        @ ( produc6081775807080527818_nat_o
                          @ ^ [Mi3: nat,Ma3: nat] :
                              ( ( ord_less_eq_nat @ Mi3 @ Ma3 )
                              & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                              & ! [I4: nat] :
                                  ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                 => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I4 ) @ X2 ) )
                                    = ( vEBT_V8194947554948674370ptions @ Summary2 @ I4 ) ) )
                              & ( ( Mi3 = Ma3 )
                               => ! [X4: vEBT_VEBT] :
                                    ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                   => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                              & ( ( Mi3 != Ma3 )
                               => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ Ma3 )
                                  & ! [X4: nat] :
                                      ( ( ord_less_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                                     => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ X4 )
                                       => ( ( ord_less_nat @ Mi3 @ X4 )
                                          & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) )
                        @ Mima ) ) )
                 => ~ ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) @ Xa2 ) ) ) ) ) ) ) ).

% VEBT_internal.valid'.pelims(1)
thf(fact_2902_VEBT__internal_Ovalid_H_Opelims_I2_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ( vEBT_VEBT_valid @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [Uu: $o,Uv: $o] :
              ( ( X
                = ( vEBT_Leaf @ Uu @ Uv ) )
             => ( ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ Uu @ Uv ) @ Xa2 ) )
               => ( Xa2 != one_one_nat ) ) )
         => ~ ! [Mima: option4927543243414619207at_nat,Deg2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) )
               => ( ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) @ Xa2 ) )
                 => ~ ( ( Deg2 = Xa2 )
                      & ! [X3: vEBT_VEBT] :
                          ( ( member_VEBT_VEBT @ X3 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                         => ( vEBT_VEBT_valid @ X3 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                      & ( vEBT_VEBT_valid @ Summary2 @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                      & ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                        = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                      & ( case_o184042715313410164at_nat
                        @ ( ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X2 )
                          & ! [X4: vEBT_VEBT] :
                              ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                             => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                        @ ( produc6081775807080527818_nat_o
                          @ ^ [Mi3: nat,Ma3: nat] :
                              ( ( ord_less_eq_nat @ Mi3 @ Ma3 )
                              & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                              & ! [I4: nat] :
                                  ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                                 => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I4 ) @ X2 ) )
                                    = ( vEBT_V8194947554948674370ptions @ Summary2 @ I4 ) ) )
                              & ( ( Mi3 = Ma3 )
                               => ! [X4: vEBT_VEBT] :
                                    ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                   => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                              & ( ( Mi3 != Ma3 )
                               => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ Ma3 )
                                  & ! [X4: nat] :
                                      ( ( ord_less_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                                     => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ X4 )
                                       => ( ( ord_less_nat @ Mi3 @ X4 )
                                          & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) )
                        @ Mima ) ) ) ) ) ) ) ).

% VEBT_internal.valid'.pelims(2)
thf(fact_2903_Sup__int__def,axiom,
    ( complete_Sup_Sup_int
    = ( ^ [X2: set_int] :
          ( the_int
          @ ^ [X4: int] :
              ( ( member_int @ X4 @ X2 )
              & ! [Y4: int] :
                  ( ( member_int @ Y4 @ X2 )
                 => ( ord_less_eq_int @ Y4 @ X4 ) ) ) ) ) ) ).

% Sup_int_def
thf(fact_2904_VEBT__internal_Ovalid_H_Opelims_I3_J,axiom,
    ! [X: vEBT_VEBT,Xa2: nat] :
      ( ~ ( vEBT_VEBT_valid @ X @ Xa2 )
     => ( ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ X @ Xa2 ) )
       => ( ! [Uu: $o,Uv: $o] :
              ( ( X
                = ( vEBT_Leaf @ Uu @ Uv ) )
             => ( ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Leaf @ Uu @ Uv ) @ Xa2 ) )
               => ( Xa2 = one_one_nat ) ) )
         => ~ ! [Mima: option4927543243414619207at_nat,Deg2: nat,TreeList3: list_VEBT_VEBT,Summary2: vEBT_VEBT] :
                ( ( X
                  = ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) )
               => ( ( accp_P2887432264394892906BT_nat @ vEBT_VEBT_valid_rel @ ( produc738532404422230701BT_nat @ ( vEBT_Node @ Mima @ Deg2 @ TreeList3 @ Summary2 ) @ Xa2 ) )
                 => ( ( Deg2 = Xa2 )
                    & ! [X5: vEBT_VEBT] :
                        ( ( member_VEBT_VEBT @ X5 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                       => ( vEBT_VEBT_valid @ X5 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                    & ( vEBT_VEBT_valid @ Summary2 @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
                    & ( ( size_s6755466524823107622T_VEBT @ TreeList3 )
                      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                    & ( case_o184042715313410164at_nat
                      @ ( ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ Summary2 @ X2 )
                        & ! [X4: vEBT_VEBT] :
                            ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                           => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                      @ ( produc6081775807080527818_nat_o
                        @ ^ [Mi3: nat,Ma3: nat] :
                            ( ( ord_less_eq_nat @ Mi3 @ Ma3 )
                            & ( ord_less_nat @ Ma3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                            & ! [I4: nat] :
                                ( ( ord_less_nat @ I4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ Deg2 @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) )
                               => ( ( ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ TreeList3 @ I4 ) @ X2 ) )
                                  = ( vEBT_V8194947554948674370ptions @ Summary2 @ I4 ) ) )
                            & ( ( Mi3 = Ma3 )
                             => ! [X4: vEBT_VEBT] :
                                  ( ( member_VEBT_VEBT @ X4 @ ( set_VEBT_VEBT2 @ TreeList3 ) )
                                 => ~ ? [X2: nat] : ( vEBT_V8194947554948674370ptions @ X4 @ X2 ) ) )
                            & ( ( Mi3 != Ma3 )
                             => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ Ma3 )
                                & ! [X4: nat] :
                                    ( ( ord_less_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Deg2 ) )
                                   => ( ( vEBT_V5917875025757280293ildren @ ( divide_divide_nat @ Deg2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ TreeList3 @ X4 )
                                     => ( ( ord_less_nat @ Mi3 @ X4 )
                                        & ( ord_less_eq_nat @ X4 @ Ma3 ) ) ) ) ) ) ) )
                      @ Mima ) ) ) ) ) ) ) ).

% VEBT_internal.valid'.pelims(3)
thf(fact_2905_less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ M @ N ) @ ( transi6264000038957366511cl_nat @ pred_nat ) )
      = ( ord_less_nat @ M @ N ) ) ).

% less_eq
thf(fact_2906_pred__nat__trancl__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ M @ N ) @ ( transi2905341329935302413cl_nat @ pred_nat ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% pred_nat_trancl_eq_le
thf(fact_2907_min__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_min_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( suc @ ( ord_min_nat @ M @ N ) ) ) ).

% min_Suc_Suc
thf(fact_2908_min__0R,axiom,
    ! [N: nat] :
      ( ( ord_min_nat @ N @ zero_zero_nat )
      = zero_zero_nat ) ).

% min_0R
thf(fact_2909_min__0L,axiom,
    ! [N: nat] :
      ( ( ord_min_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% min_0L
thf(fact_2910_min__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_min_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( suc @ ( ord_min_nat @ ( pred_numeral @ K ) @ N ) ) ) ).

% min_numeral_Suc
thf(fact_2911_min__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_min_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( suc @ ( ord_min_nat @ N @ ( pred_numeral @ K ) ) ) ) ).

% min_Suc_numeral
thf(fact_2912_inf__nat__def,axiom,
    inf_inf_nat = ord_min_nat ).

% inf_nat_def
thf(fact_2913_concat__bit__assoc__sym,axiom,
    ! [M: nat,N: nat,K: int,L2: int,R2: int] :
      ( ( bit_concat_bit @ M @ ( bit_concat_bit @ N @ K @ L2 ) @ R2 )
      = ( bit_concat_bit @ ( ord_min_nat @ M @ N ) @ K @ ( bit_concat_bit @ ( minus_minus_nat @ M @ N ) @ L2 @ R2 ) ) ) ).

% concat_bit_assoc_sym
thf(fact_2914_min__diff,axiom,
    ! [M: nat,I2: nat,N: nat] :
      ( ( ord_min_nat @ ( minus_minus_nat @ M @ I2 ) @ ( minus_minus_nat @ N @ I2 ) )
      = ( minus_minus_nat @ ( ord_min_nat @ M @ N ) @ I2 ) ) ).

% min_diff
thf(fact_2915_nat__mult__min__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ ( ord_min_nat @ M @ N ) @ Q2 )
      = ( ord_min_nat @ ( times_times_nat @ M @ Q2 ) @ ( times_times_nat @ N @ Q2 ) ) ) ).

% nat_mult_min_left
thf(fact_2916_nat__mult__min__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ M @ ( ord_min_nat @ N @ Q2 ) )
      = ( ord_min_nat @ ( times_times_nat @ M @ N ) @ ( times_times_nat @ M @ Q2 ) ) ) ).

% nat_mult_min_right
thf(fact_2917_take__bit__concat__bit__eq,axiom,
    ! [M: nat,N: nat,K: int,L2: int] :
      ( ( bit_se2923211474154528505it_int @ M @ ( bit_concat_bit @ N @ K @ L2 ) )
      = ( bit_concat_bit @ ( ord_min_nat @ M @ N ) @ K @ ( bit_se2923211474154528505it_int @ ( minus_minus_nat @ M @ N ) @ L2 ) ) ) ).

% take_bit_concat_bit_eq
thf(fact_2918_min__Suc2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_min_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [M2: nat] : ( suc @ ( ord_min_nat @ M2 @ N ) )
        @ M ) ) ).

% min_Suc2
thf(fact_2919_min__Suc1,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_min_nat @ ( suc @ N ) @ M )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [M2: nat] : ( suc @ ( ord_min_nat @ N @ M2 ) )
        @ M ) ) ).

% min_Suc1
thf(fact_2920_Rats__eq__int__div__nat,axiom,
    ( field_5140801741446780682s_real
    = ( collect_real
      @ ^ [Uu3: real] :
        ? [I4: int,N2: nat] :
          ( ( Uu3
            = ( divide_divide_real @ ( ring_1_of_int_real @ I4 ) @ ( semiri5074537144036343181t_real @ N2 ) ) )
          & ( N2 != zero_zero_nat ) ) ) ) ).

% Rats_eq_int_div_nat
thf(fact_2921_min__enat__simps_I2_J,axiom,
    ! [Q2: extended_enat] :
      ( ( ord_mi8085742599997312461d_enat @ Q2 @ zero_z5237406670263579293d_enat )
      = zero_z5237406670263579293d_enat ) ).

% min_enat_simps(2)
thf(fact_2922_min__enat__simps_I3_J,axiom,
    ! [Q2: extended_enat] :
      ( ( ord_mi8085742599997312461d_enat @ zero_z5237406670263579293d_enat @ Q2 )
      = zero_z5237406670263579293d_enat ) ).

% min_enat_simps(3)
thf(fact_2923_Rats__abs__iff,axiom,
    ! [X: real] :
      ( ( member_real @ ( abs_abs_real @ X ) @ field_5140801741446780682s_real )
      = ( member_real @ X @ field_5140801741446780682s_real ) ) ).

% Rats_abs_iff
thf(fact_2924_Rats__dense__in__real,axiom,
    ! [X: real,Y2: real] :
      ( ( ord_less_real @ X @ Y2 )
     => ? [X5: real] :
          ( ( member_real @ X5 @ field_5140801741446780682s_real )
          & ( ord_less_real @ X @ X5 )
          & ( ord_less_real @ X5 @ Y2 ) ) ) ).

% Rats_dense_in_real
thf(fact_2925_Rats__no__bot__less,axiom,
    ! [X: real] :
    ? [X5: real] :
      ( ( member_real @ X5 @ field_5140801741446780682s_real )
      & ( ord_less_real @ X5 @ X ) ) ).

% Rats_no_bot_less
thf(fact_2926_Rats__no__top__le,axiom,
    ! [X: real] :
    ? [X5: real] :
      ( ( member_real @ X5 @ field_5140801741446780682s_real )
      & ( ord_less_eq_real @ X @ X5 ) ) ).

% Rats_no_top_le
thf(fact_2927_Rats__eq__int__div__int,axiom,
    ( field_5140801741446780682s_real
    = ( collect_real
      @ ^ [Uu3: real] :
        ? [I4: int,J3: int] :
          ( ( Uu3
            = ( divide_divide_real @ ( ring_1_of_int_real @ I4 ) @ ( ring_1_of_int_real @ J3 ) ) )
          & ( J3 != zero_zero_int ) ) ) ) ).

% Rats_eq_int_div_int
thf(fact_2928_inf__enat__def,axiom,
    inf_in1870772243966228564d_enat = ord_mi8085742599997312461d_enat ).

% inf_enat_def
thf(fact_2929_rat__floor__lemma,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( divide_divide_int @ A @ B ) ) @ ( fract @ A @ B ) )
      & ( ord_less_rat @ ( fract @ A @ B ) @ ( ring_1_of_int_rat @ ( plus_plus_int @ ( divide_divide_int @ A @ B ) @ one_one_int ) ) ) ) ).

% rat_floor_lemma
thf(fact_2930_mult__rat,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( times_times_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
      = ( fract @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ).

% mult_rat
thf(fact_2931_divide__rat,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( divide_divide_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
      = ( fract @ ( times_times_int @ A @ D ) @ ( times_times_int @ B @ C ) ) ) ).

% divide_rat
thf(fact_2932_less__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( ord_less_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( ord_less_int @ ( times_times_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ B @ D ) ) @ ( times_times_int @ ( times_times_int @ C @ B ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% less_rat
thf(fact_2933_add__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( plus_plus_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( fract @ ( plus_plus_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ C @ B ) ) @ ( times_times_int @ B @ D ) ) ) ) ) ).

% add_rat
thf(fact_2934_le__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( ord_less_eq_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( ord_less_eq_int @ ( times_times_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ B @ D ) ) @ ( times_times_int @ ( times_times_int @ C @ B ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% le_rat
thf(fact_2935_diff__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( minus_minus_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( fract @ ( minus_minus_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ C @ B ) ) @ ( times_times_int @ B @ D ) ) ) ) ) ).

% diff_rat
thf(fact_2936_sgn__rat,axiom,
    ! [A: int,B: int] :
      ( ( sgn_sgn_rat @ ( fract @ A @ B ) )
      = ( ring_1_of_int_rat @ ( times_times_int @ ( sgn_sgn_int @ A ) @ ( sgn_sgn_int @ B ) ) ) ) ).

% sgn_rat
thf(fact_2937_Fract__of__int__eq,axiom,
    ! [K: int] :
      ( ( fract @ K @ one_one_int )
      = ( ring_1_of_int_rat @ K ) ) ).

% Fract_of_int_eq
thf(fact_2938_One__rat__def,axiom,
    ( one_one_rat
    = ( fract @ one_one_int @ one_one_int ) ) ).

% One_rat_def
thf(fact_2939_eq__rat_I1_J,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( ( fract @ A @ B )
            = ( fract @ C @ D ) )
          = ( ( times_times_int @ A @ D )
            = ( times_times_int @ C @ B ) ) ) ) ) ).

% eq_rat(1)
thf(fact_2940_mult__rat__cancel,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( fract @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( fract @ A @ B ) ) ) ).

% mult_rat_cancel
thf(fact_2941_eq__rat_I2_J,axiom,
    ! [A: int] :
      ( ( fract @ A @ zero_zero_int )
      = ( fract @ zero_zero_int @ one_one_int ) ) ).

% eq_rat(2)
thf(fact_2942_Fract__of__nat__eq,axiom,
    ! [K: nat] :
      ( ( fract @ ( semiri1314217659103216013at_int @ K ) @ one_one_int )
      = ( semiri681578069525770553at_rat @ K ) ) ).

% Fract_of_nat_eq
thf(fact_2943_Zero__rat__def,axiom,
    ( zero_zero_rat
    = ( fract @ zero_zero_int @ one_one_int ) ) ).

% Zero_rat_def
thf(fact_2944_rat__number__collapse_I3_J,axiom,
    ! [W: num] :
      ( ( fract @ ( numeral_numeral_int @ W ) @ one_one_int )
      = ( numeral_numeral_rat @ W ) ) ).

% rat_number_collapse(3)
thf(fact_2945_rat__number__expand_I3_J,axiom,
    ( numeral_numeral_rat
    = ( ^ [K3: num] : ( fract @ ( numeral_numeral_int @ K3 ) @ one_one_int ) ) ) ).

% rat_number_expand(3)
thf(fact_2946_one__less__Fract__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_rat @ one_one_rat @ ( fract @ A @ B ) )
        = ( ord_less_int @ B @ A ) ) ) ).

% one_less_Fract_iff
thf(fact_2947_Fract__less__one__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_rat @ ( fract @ A @ B ) @ one_one_rat )
        = ( ord_less_int @ A @ B ) ) ) ).

% Fract_less_one_iff
thf(fact_2948_rat__number__collapse_I5_J,axiom,
    ( ( fract @ ( uminus_uminus_int @ one_one_int ) @ one_one_int )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% rat_number_collapse(5)
thf(fact_2949_Fract__add__one,axiom,
    ! [N: int,M: int] :
      ( ( N != zero_zero_int )
     => ( ( fract @ ( plus_plus_int @ M @ N ) @ N )
        = ( plus_plus_rat @ ( fract @ M @ N ) @ one_one_rat ) ) ) ).

% Fract_add_one
thf(fact_2950_zero__le__Fract__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ ( fract @ A @ B ) )
        = ( ord_less_eq_int @ zero_zero_int @ A ) ) ) ).

% zero_le_Fract_iff
thf(fact_2951_Fract__le__zero__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ ( fract @ A @ B ) @ zero_zero_rat )
        = ( ord_less_eq_int @ A @ zero_zero_int ) ) ) ).

% Fract_le_zero_iff
thf(fact_2952_one__le__Fract__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ one_one_rat @ ( fract @ A @ B ) )
        = ( ord_less_eq_int @ B @ A ) ) ) ).

% one_le_Fract_iff
thf(fact_2953_Fract__le__one__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ ( fract @ A @ B ) @ one_one_rat )
        = ( ord_less_eq_int @ A @ B ) ) ) ).

% Fract_le_one_iff
thf(fact_2954_rat__number__collapse_I4_J,axiom,
    ! [W: num] :
      ( ( fract @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ one_one_int )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) ) ).

% rat_number_collapse(4)
thf(fact_2955_rat__number__expand_I5_J,axiom,
    ! [K: num] :
      ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) )
      = ( fract @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) ).

% rat_number_expand(5)
thf(fact_2956_take__bit__numeral__minus__numeral__int,axiom,
    ! [M: num,N: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( case_option_int_num @ zero_zero_int
        @ ^ [Q4: num] : ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ M ) @ ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_int @ Q4 ) ) )
        @ ( bit_take_bit_num @ ( numeral_numeral_nat @ M ) @ N ) ) ) ).

% take_bit_numeral_minus_numeral_int
thf(fact_2957_take__bit__num__simps_I1_J,axiom,
    ! [M: num] :
      ( ( bit_take_bit_num @ zero_zero_nat @ M )
      = none_num ) ).

% take_bit_num_simps(1)
thf(fact_2958_take__bit__num__simps_I2_J,axiom,
    ! [N: nat] :
      ( ( bit_take_bit_num @ ( suc @ N ) @ one )
      = ( some_num @ one ) ) ).

% take_bit_num_simps(2)
thf(fact_2959_take__bit__num__simps_I5_J,axiom,
    ! [R2: num] :
      ( ( bit_take_bit_num @ ( numeral_numeral_nat @ R2 ) @ one )
      = ( some_num @ one ) ) ).

% take_bit_num_simps(5)
thf(fact_2960_Code__Abstract__Nat_Otake__bit__num__code_I1_J,axiom,
    ! [N: nat] :
      ( ( bit_take_bit_num @ N @ one )
      = ( case_nat_option_num @ none_num
        @ ^ [N2: nat] : ( some_num @ one )
        @ N ) ) ).

% Code_Abstract_Nat.take_bit_num_code(1)
thf(fact_2961_take__bit__num__def,axiom,
    ( bit_take_bit_num
    = ( ^ [N2: nat,M6: num] :
          ( if_option_num
          @ ( ( bit_se2925701944663578781it_nat @ N2 @ ( numeral_numeral_nat @ M6 ) )
            = zero_zero_nat )
          @ none_num
          @ ( some_num @ ( num_of_nat @ ( bit_se2925701944663578781it_nat @ N2 @ ( numeral_numeral_nat @ M6 ) ) ) ) ) ) ) ).

% take_bit_num_def
thf(fact_2962_and__minus__numerals_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bitM @ N ) ) ) ) ).

% and_minus_numerals(3)
thf(fact_2963_and__minus__numerals_I7_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bitM @ N ) ) ) ) ).

% and_minus_numerals(7)
thf(fact_2964_take__bit__num__simps_I4_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ ( suc @ N ) @ ( bit1 @ M ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ N @ M ) ) ) ) ).

% take_bit_num_simps(4)
thf(fact_2965_take__bit__num__simps_I3_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ ( suc @ N ) @ ( bit0 @ M ) )
      = ( case_o6005452278849405969um_num @ none_num
        @ ^ [Q4: num] : ( some_num @ ( bit0 @ Q4 ) )
        @ ( bit_take_bit_num @ N @ M ) ) ) ).

% take_bit_num_simps(3)
thf(fact_2966_take__bit__num__simps_I7_J,axiom,
    ! [R2: num,M: num] :
      ( ( bit_take_bit_num @ ( numeral_numeral_nat @ R2 ) @ ( bit1 @ M ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ ( pred_numeral @ R2 ) @ M ) ) ) ) ).

% take_bit_num_simps(7)
thf(fact_2967_take__bit__num__simps_I6_J,axiom,
    ! [R2: num,M: num] :
      ( ( bit_take_bit_num @ ( numeral_numeral_nat @ R2 ) @ ( bit0 @ M ) )
      = ( case_o6005452278849405969um_num @ none_num
        @ ^ [Q4: num] : ( some_num @ ( bit0 @ Q4 ) )
        @ ( bit_take_bit_num @ ( pred_numeral @ R2 ) @ M ) ) ) ).

% take_bit_num_simps(6)
thf(fact_2968_and__minus__numerals_I8_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bit0 @ N ) ) ) ) ).

% and_minus_numerals(8)
thf(fact_2969_and__minus__numerals_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bit0 @ N ) ) ) ) ).

% and_minus_numerals(4)
thf(fact_2970_and__not__num_Osimps_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_and_not_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( case_o6005452278849405969um_num @ ( some_num @ one )
        @ ^ [N8: num] : ( some_num @ ( bit1 @ N8 ) )
        @ ( bit_and_not_num @ M @ N ) ) ) ).

% and_not_num.simps(8)
thf(fact_2971_Code__Abstract__Nat_Otake__bit__num__code_I2_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ N @ ( bit0 @ M ) )
      = ( case_nat_option_num @ none_num
        @ ^ [N2: nat] :
            ( case_o6005452278849405969um_num @ none_num
            @ ^ [Q4: num] : ( some_num @ ( bit0 @ Q4 ) )
            @ ( bit_take_bit_num @ N2 @ M ) )
        @ N ) ) ).

% Code_Abstract_Nat.take_bit_num_code(2)
thf(fact_2972_and__not__num_Osimps_I4_J,axiom,
    ! [M: num] :
      ( ( bit_and_not_num @ ( bit0 @ M ) @ one )
      = ( some_num @ ( bit0 @ M ) ) ) ).

% and_not_num.simps(4)
thf(fact_2973_and__not__num_Osimps_I2_J,axiom,
    ! [N: num] :
      ( ( bit_and_not_num @ one @ ( bit0 @ N ) )
      = ( some_num @ one ) ) ).

% and_not_num.simps(2)
thf(fact_2974_and__not__num_Osimps_I1_J,axiom,
    ( ( bit_and_not_num @ one @ one )
    = none_num ) ).

% and_not_num.simps(1)
thf(fact_2975_and__not__num_Osimps_I3_J,axiom,
    ! [N: num] :
      ( ( bit_and_not_num @ one @ ( bit1 @ N ) )
      = none_num ) ).

% and_not_num.simps(3)
thf(fact_2976_and__not__num_Osimps_I7_J,axiom,
    ! [M: num] :
      ( ( bit_and_not_num @ ( bit1 @ M ) @ one )
      = ( some_num @ ( bit0 @ M ) ) ) ).

% and_not_num.simps(7)
thf(fact_2977_and__not__num__eq__Some__iff,axiom,
    ! [M: num,N: num,Q2: num] :
      ( ( ( bit_and_not_num @ M @ N )
        = ( some_num @ Q2 ) )
      = ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) )
        = ( numeral_numeral_int @ Q2 ) ) ) ).

% and_not_num_eq_Some_iff
thf(fact_2978_Code__Abstract__Nat_Otake__bit__num__code_I3_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ N @ ( bit1 @ M ) )
      = ( case_nat_option_num @ none_num
        @ ^ [N2: nat] : ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ N2 @ M ) ) )
        @ N ) ) ).

% Code_Abstract_Nat.take_bit_num_code(3)
thf(fact_2979_and__not__num__eq__None__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( bit_and_not_num @ M @ N )
        = none_num )
      = ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) )
        = zero_zero_int ) ) ).

% and_not_num_eq_None_iff
thf(fact_2980_int__numeral__and__not__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ N ) ) ) ).

% int_numeral_and_not_num
thf(fact_2981_int__numeral__not__and__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ N @ M ) ) ) ).

% int_numeral_not_and_num
thf(fact_2982_positive__rat,axiom,
    ! [A: int,B: int] :
      ( ( positive @ ( fract @ A @ B ) )
      = ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ).

% positive_rat
thf(fact_2983_Rat_Opositive__add,axiom,
    ! [X: rat,Y2: rat] :
      ( ( positive @ X )
     => ( ( positive @ Y2 )
       => ( positive @ ( plus_plus_rat @ X @ Y2 ) ) ) ) ).

% Rat.positive_add
thf(fact_2984_Rat_Opositive__mult,axiom,
    ! [X: rat,Y2: rat] :
      ( ( positive @ X )
     => ( ( positive @ Y2 )
       => ( positive @ ( times_times_rat @ X @ Y2 ) ) ) ) ).

% Rat.positive_mult
thf(fact_2985_Rat_Opositive_Orep__eq,axiom,
    ( positive
    = ( ^ [X4: rat] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ ( rep_Rat @ X4 ) ) @ ( product_snd_int_int @ ( rep_Rat @ X4 ) ) ) ) ) ) ).

% Rat.positive.rep_eq
thf(fact_2986_and__not__num_Oelims,axiom,
    ! [X: num,Xa2: num,Y2: option_num] :
      ( ( ( bit_and_not_num @ X @ Xa2 )
        = Y2 )
     => ( ( ( X = one )
         => ( ( Xa2 = one )
           => ( Y2 != none_num ) ) )
       => ( ( ( X = one )
           => ( ? [N4: num] :
                  ( Xa2
                  = ( bit0 @ N4 ) )
             => ( Y2
               != ( some_num @ one ) ) ) )
         => ( ( ( X = one )
             => ( ? [N4: num] :
                    ( Xa2
                    = ( bit1 @ N4 ) )
               => ( Y2 != none_num ) ) )
           => ( ! [M5: num] :
                  ( ( X
                    = ( bit0 @ M5 ) )
                 => ( ( Xa2 = one )
                   => ( Y2
                     != ( some_num @ ( bit0 @ M5 ) ) ) ) )
             => ( ! [M5: num] :
                    ( ( X
                      = ( bit0 @ M5 ) )
                   => ! [N4: num] :
                        ( ( Xa2
                          = ( bit0 @ N4 ) )
                       => ( Y2
                         != ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M5 @ N4 ) ) ) ) )
               => ( ! [M5: num] :
                      ( ( X
                        = ( bit0 @ M5 ) )
                     => ! [N4: num] :
                          ( ( Xa2
                            = ( bit1 @ N4 ) )
                         => ( Y2
                           != ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M5 @ N4 ) ) ) ) )
                 => ( ! [M5: num] :
                        ( ( X
                          = ( bit1 @ M5 ) )
                       => ( ( Xa2 = one )
                         => ( Y2
                           != ( some_num @ ( bit0 @ M5 ) ) ) ) )
                   => ( ! [M5: num] :
                          ( ( X
                            = ( bit1 @ M5 ) )
                         => ! [N4: num] :
                              ( ( Xa2
                                = ( bit0 @ N4 ) )
                             => ( Y2
                               != ( case_o6005452278849405969um_num @ ( some_num @ one )
                                  @ ^ [N8: num] : ( some_num @ ( bit1 @ N8 ) )
                                  @ ( bit_and_not_num @ M5 @ N4 ) ) ) ) )
                     => ~ ! [M5: num] :
                            ( ( X
                              = ( bit1 @ M5 ) )
                           => ! [N4: num] :
                                ( ( Xa2
                                  = ( bit1 @ N4 ) )
                               => ( Y2
                                 != ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M5 @ N4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_not_num.elims
thf(fact_2987_and__not__num_Osimps_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_and_not_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M @ N ) ) ) ).

% and_not_num.simps(5)
thf(fact_2988_and__not__num_Osimps_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_and_not_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M @ N ) ) ) ).

% and_not_num.simps(6)
thf(fact_2989_and__not__num_Osimps_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_and_not_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M @ N ) ) ) ).

% and_not_num.simps(9)
thf(fact_2990_and__not__num_Opelims,axiom,
    ! [X: num,Xa2: num,Y2: option_num] :
      ( ( ( bit_and_not_num @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ X @ Xa2 ) )
       => ( ( ( X = one )
           => ( ( Xa2 = one )
             => ( ( Y2 = none_num )
               => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ one @ one ) ) ) ) )
         => ( ( ( X = one )
             => ! [N4: num] :
                  ( ( Xa2
                    = ( bit0 @ N4 ) )
                 => ( ( Y2
                      = ( some_num @ one ) )
                   => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ one @ ( bit0 @ N4 ) ) ) ) ) )
           => ( ( ( X = one )
               => ! [N4: num] :
                    ( ( Xa2
                      = ( bit1 @ N4 ) )
                   => ( ( Y2 = none_num )
                     => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ one @ ( bit1 @ N4 ) ) ) ) ) )
             => ( ! [M5: num] :
                    ( ( X
                      = ( bit0 @ M5 ) )
                   => ( ( Xa2 = one )
                     => ( ( Y2
                          = ( some_num @ ( bit0 @ M5 ) ) )
                       => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ one ) ) ) ) )
               => ( ! [M5: num] :
                      ( ( X
                        = ( bit0 @ M5 ) )
                     => ! [N4: num] :
                          ( ( Xa2
                            = ( bit0 @ N4 ) )
                         => ( ( Y2
                              = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M5 @ N4 ) ) )
                           => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit0 @ N4 ) ) ) ) ) )
                 => ( ! [M5: num] :
                        ( ( X
                          = ( bit0 @ M5 ) )
                       => ! [N4: num] :
                            ( ( Xa2
                              = ( bit1 @ N4 ) )
                           => ( ( Y2
                                = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M5 @ N4 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit1 @ N4 ) ) ) ) ) )
                   => ( ! [M5: num] :
                          ( ( X
                            = ( bit1 @ M5 ) )
                         => ( ( Xa2 = one )
                           => ( ( Y2
                                = ( some_num @ ( bit0 @ M5 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ one ) ) ) ) )
                     => ( ! [M5: num] :
                            ( ( X
                              = ( bit1 @ M5 ) )
                           => ! [N4: num] :
                                ( ( Xa2
                                  = ( bit0 @ N4 ) )
                               => ( ( Y2
                                    = ( case_o6005452278849405969um_num @ ( some_num @ one )
                                      @ ^ [N8: num] : ( some_num @ ( bit1 @ N8 ) )
                                      @ ( bit_and_not_num @ M5 @ N4 ) ) )
                                 => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit0 @ N4 ) ) ) ) ) )
                       => ~ ! [M5: num] :
                              ( ( X
                                = ( bit1 @ M5 ) )
                             => ! [N4: num] :
                                  ( ( Xa2
                                    = ( bit1 @ N4 ) )
                                 => ( ( Y2
                                      = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M5 @ N4 ) ) )
                                   => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit1 @ N4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_not_num.pelims
thf(fact_2991_and__num_Oelims,axiom,
    ! [X: num,Xa2: num,Y2: option_num] :
      ( ( ( bit_un7362597486090784418nd_num @ X @ Xa2 )
        = Y2 )
     => ( ( ( X = one )
         => ( ( Xa2 = one )
           => ( Y2
             != ( some_num @ one ) ) ) )
       => ( ( ( X = one )
           => ( ? [N4: num] :
                  ( Xa2
                  = ( bit0 @ N4 ) )
             => ( Y2 != none_num ) ) )
         => ( ( ( X = one )
             => ( ? [N4: num] :
                    ( Xa2
                    = ( bit1 @ N4 ) )
               => ( Y2
                 != ( some_num @ one ) ) ) )
           => ( ( ? [M5: num] :
                    ( X
                    = ( bit0 @ M5 ) )
               => ( ( Xa2 = one )
                 => ( Y2 != none_num ) ) )
             => ( ! [M5: num] :
                    ( ( X
                      = ( bit0 @ M5 ) )
                   => ! [N4: num] :
                        ( ( Xa2
                          = ( bit0 @ N4 ) )
                       => ( Y2
                         != ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) ) ) )
               => ( ! [M5: num] :
                      ( ( X
                        = ( bit0 @ M5 ) )
                     => ! [N4: num] :
                          ( ( Xa2
                            = ( bit1 @ N4 ) )
                         => ( Y2
                           != ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) ) ) )
                 => ( ( ? [M5: num] :
                          ( X
                          = ( bit1 @ M5 ) )
                     => ( ( Xa2 = one )
                       => ( Y2
                         != ( some_num @ one ) ) ) )
                   => ( ! [M5: num] :
                          ( ( X
                            = ( bit1 @ M5 ) )
                         => ! [N4: num] :
                              ( ( Xa2
                                = ( bit0 @ N4 ) )
                             => ( Y2
                               != ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) ) ) )
                     => ~ ! [M5: num] :
                            ( ( X
                              = ( bit1 @ M5 ) )
                           => ! [N4: num] :
                                ( ( Xa2
                                  = ( bit1 @ N4 ) )
                               => ( Y2
                                 != ( case_o6005452278849405969um_num @ ( some_num @ one )
                                    @ ^ [N8: num] : ( some_num @ ( bit1 @ N8 ) )
                                    @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_num.elims
thf(fact_2992_and__num_Osimps_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% and_num.simps(5)
thf(fact_2993_and__num_Osimps_I1_J,axiom,
    ( ( bit_un7362597486090784418nd_num @ one @ one )
    = ( some_num @ one ) ) ).

% and_num.simps(1)
thf(fact_2994_and__num_Osimps_I3_J,axiom,
    ! [N: num] :
      ( ( bit_un7362597486090784418nd_num @ one @ ( bit1 @ N ) )
      = ( some_num @ one ) ) ).

% and_num.simps(3)
thf(fact_2995_and__num_Osimps_I7_J,axiom,
    ! [M: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit1 @ M ) @ one )
      = ( some_num @ one ) ) ).

% and_num.simps(7)
thf(fact_2996_and__num_Osimps_I2_J,axiom,
    ! [N: num] :
      ( ( bit_un7362597486090784418nd_num @ one @ ( bit0 @ N ) )
      = none_num ) ).

% and_num.simps(2)
thf(fact_2997_and__num_Osimps_I4_J,axiom,
    ! [M: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit0 @ M ) @ one )
      = none_num ) ).

% and_num.simps(4)
thf(fact_2998_and__num_Osimps_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% and_num.simps(6)
thf(fact_2999_and__num_Osimps_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% and_num.simps(8)
thf(fact_3000_and__num_Osimps_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( case_o6005452278849405969um_num @ ( some_num @ one )
        @ ^ [N8: num] : ( some_num @ ( bit1 @ N8 ) )
        @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% and_num.simps(9)
thf(fact_3001_and__num_Opelims,axiom,
    ! [X: num,Xa2: num,Y2: option_num] :
      ( ( ( bit_un7362597486090784418nd_num @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ X @ Xa2 ) )
       => ( ( ( X = one )
           => ( ( Xa2 = one )
             => ( ( Y2
                  = ( some_num @ one ) )
               => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ one @ one ) ) ) ) )
         => ( ( ( X = one )
             => ! [N4: num] :
                  ( ( Xa2
                    = ( bit0 @ N4 ) )
                 => ( ( Y2 = none_num )
                   => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ one @ ( bit0 @ N4 ) ) ) ) ) )
           => ( ( ( X = one )
               => ! [N4: num] :
                    ( ( Xa2
                      = ( bit1 @ N4 ) )
                   => ( ( Y2
                        = ( some_num @ one ) )
                     => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ one @ ( bit1 @ N4 ) ) ) ) ) )
             => ( ! [M5: num] :
                    ( ( X
                      = ( bit0 @ M5 ) )
                   => ( ( Xa2 = one )
                     => ( ( Y2 = none_num )
                       => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ one ) ) ) ) )
               => ( ! [M5: num] :
                      ( ( X
                        = ( bit0 @ M5 ) )
                     => ! [N4: num] :
                          ( ( Xa2
                            = ( bit0 @ N4 ) )
                         => ( ( Y2
                              = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) )
                           => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit0 @ N4 ) ) ) ) ) )
                 => ( ! [M5: num] :
                        ( ( X
                          = ( bit0 @ M5 ) )
                       => ! [N4: num] :
                            ( ( Xa2
                              = ( bit1 @ N4 ) )
                           => ( ( Y2
                                = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit1 @ N4 ) ) ) ) ) )
                   => ( ! [M5: num] :
                          ( ( X
                            = ( bit1 @ M5 ) )
                         => ( ( Xa2 = one )
                           => ( ( Y2
                                = ( some_num @ one ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ one ) ) ) ) )
                     => ( ! [M5: num] :
                            ( ( X
                              = ( bit1 @ M5 ) )
                           => ! [N4: num] :
                                ( ( Xa2
                                  = ( bit0 @ N4 ) )
                               => ( ( Y2
                                    = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) )
                                 => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit0 @ N4 ) ) ) ) ) )
                       => ~ ! [M5: num] :
                              ( ( X
                                = ( bit1 @ M5 ) )
                             => ! [N4: num] :
                                  ( ( Xa2
                                    = ( bit1 @ N4 ) )
                                 => ( ( Y2
                                      = ( case_o6005452278849405969um_num @ ( some_num @ one )
                                        @ ^ [N8: num] : ( some_num @ ( bit1 @ N8 ) )
                                        @ ( bit_un7362597486090784418nd_num @ M5 @ N4 ) ) )
                                   => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit1 @ N4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_num.pelims
thf(fact_3002_xor__num_Oelims,axiom,
    ! [X: num,Xa2: num,Y2: option_num] :
      ( ( ( bit_un2480387367778600638or_num @ X @ Xa2 )
        = Y2 )
     => ( ( ( X = one )
         => ( ( Xa2 = one )
           => ( Y2 != none_num ) ) )
       => ( ( ( X = one )
           => ! [N4: num] :
                ( ( Xa2
                  = ( bit0 @ N4 ) )
               => ( Y2
                 != ( some_num @ ( bit1 @ N4 ) ) ) ) )
         => ( ( ( X = one )
             => ! [N4: num] :
                  ( ( Xa2
                    = ( bit1 @ N4 ) )
                 => ( Y2
                   != ( some_num @ ( bit0 @ N4 ) ) ) ) )
           => ( ! [M5: num] :
                  ( ( X
                    = ( bit0 @ M5 ) )
                 => ( ( Xa2 = one )
                   => ( Y2
                     != ( some_num @ ( bit1 @ M5 ) ) ) ) )
             => ( ! [M5: num] :
                    ( ( X
                      = ( bit0 @ M5 ) )
                   => ! [N4: num] :
                        ( ( Xa2
                          = ( bit0 @ N4 ) )
                       => ( Y2
                         != ( map_option_num_num @ bit0 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) ) ) )
               => ( ! [M5: num] :
                      ( ( X
                        = ( bit0 @ M5 ) )
                     => ! [N4: num] :
                          ( ( Xa2
                            = ( bit1 @ N4 ) )
                         => ( Y2
                           != ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) ) ) ) )
                 => ( ! [M5: num] :
                        ( ( X
                          = ( bit1 @ M5 ) )
                       => ( ( Xa2 = one )
                         => ( Y2
                           != ( some_num @ ( bit0 @ M5 ) ) ) ) )
                   => ( ! [M5: num] :
                          ( ( X
                            = ( bit1 @ M5 ) )
                         => ! [N4: num] :
                              ( ( Xa2
                                = ( bit0 @ N4 ) )
                             => ( Y2
                               != ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) ) ) ) )
                     => ~ ! [M5: num] :
                            ( ( X
                              = ( bit1 @ M5 ) )
                           => ! [N4: num] :
                                ( ( Xa2
                                  = ( bit1 @ N4 ) )
                               => ( Y2
                                 != ( map_option_num_num @ bit0 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% xor_num.elims
thf(fact_3003_xor__num_Osimps_I1_J,axiom,
    ( ( bit_un2480387367778600638or_num @ one @ one )
    = none_num ) ).

% xor_num.simps(1)
thf(fact_3004_xor__num_Osimps_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un2480387367778600638or_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ).

% xor_num.simps(5)
thf(fact_3005_xor__num_Osimps_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un2480387367778600638or_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( map_option_num_num @ bit0 @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ).

% xor_num.simps(9)
thf(fact_3006_xor__num_Osimps_I7_J,axiom,
    ! [M: num] :
      ( ( bit_un2480387367778600638or_num @ ( bit1 @ M ) @ one )
      = ( some_num @ ( bit0 @ M ) ) ) ).

% xor_num.simps(7)
thf(fact_3007_xor__num_Osimps_I4_J,axiom,
    ! [M: num] :
      ( ( bit_un2480387367778600638or_num @ ( bit0 @ M ) @ one )
      = ( some_num @ ( bit1 @ M ) ) ) ).

% xor_num.simps(4)
thf(fact_3008_xor__num_Osimps_I3_J,axiom,
    ! [N: num] :
      ( ( bit_un2480387367778600638or_num @ one @ ( bit1 @ N ) )
      = ( some_num @ ( bit0 @ N ) ) ) ).

% xor_num.simps(3)
thf(fact_3009_xor__num_Osimps_I2_J,axiom,
    ! [N: num] :
      ( ( bit_un2480387367778600638or_num @ one @ ( bit0 @ N ) )
      = ( some_num @ ( bit1 @ N ) ) ) ).

% xor_num.simps(2)
thf(fact_3010_xor__num_Osimps_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un2480387367778600638or_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ) ).

% xor_num.simps(6)
thf(fact_3011_xor__num_Osimps_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un2480387367778600638or_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ) ).

% xor_num.simps(8)
thf(fact_3012_xor__num_Opelims,axiom,
    ! [X: num,Xa2: num,Y2: option_num] :
      ( ( ( bit_un2480387367778600638or_num @ X @ Xa2 )
        = Y2 )
     => ( ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ X @ Xa2 ) )
       => ( ( ( X = one )
           => ( ( Xa2 = one )
             => ( ( Y2 = none_num )
               => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ one @ one ) ) ) ) )
         => ( ( ( X = one )
             => ! [N4: num] :
                  ( ( Xa2
                    = ( bit0 @ N4 ) )
                 => ( ( Y2
                      = ( some_num @ ( bit1 @ N4 ) ) )
                   => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ one @ ( bit0 @ N4 ) ) ) ) ) )
           => ( ( ( X = one )
               => ! [N4: num] :
                    ( ( Xa2
                      = ( bit1 @ N4 ) )
                   => ( ( Y2
                        = ( some_num @ ( bit0 @ N4 ) ) )
                     => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ one @ ( bit1 @ N4 ) ) ) ) ) )
             => ( ! [M5: num] :
                    ( ( X
                      = ( bit0 @ M5 ) )
                   => ( ( Xa2 = one )
                     => ( ( Y2
                          = ( some_num @ ( bit1 @ M5 ) ) )
                       => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ one ) ) ) ) )
               => ( ! [M5: num] :
                      ( ( X
                        = ( bit0 @ M5 ) )
                     => ! [N4: num] :
                          ( ( Xa2
                            = ( bit0 @ N4 ) )
                         => ( ( Y2
                              = ( map_option_num_num @ bit0 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) )
                           => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit0 @ N4 ) ) ) ) ) )
                 => ( ! [M5: num] :
                        ( ( X
                          = ( bit0 @ M5 ) )
                       => ! [N4: num] :
                            ( ( Xa2
                              = ( bit1 @ N4 ) )
                           => ( ( Y2
                                = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ ( bit0 @ M5 ) @ ( bit1 @ N4 ) ) ) ) ) )
                   => ( ! [M5: num] :
                          ( ( X
                            = ( bit1 @ M5 ) )
                         => ( ( Xa2 = one )
                           => ( ( Y2
                                = ( some_num @ ( bit0 @ M5 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ one ) ) ) ) )
                     => ( ! [M5: num] :
                            ( ( X
                              = ( bit1 @ M5 ) )
                           => ! [N4: num] :
                                ( ( Xa2
                                  = ( bit0 @ N4 ) )
                               => ( ( Y2
                                    = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) ) )
                                 => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit0 @ N4 ) ) ) ) ) )
                       => ~ ! [M5: num] :
                              ( ( X
                                = ( bit1 @ M5 ) )
                             => ! [N4: num] :
                                  ( ( Xa2
                                    = ( bit1 @ N4 ) )
                                 => ( ( Y2
                                      = ( map_option_num_num @ bit0 @ ( bit_un2480387367778600638or_num @ M5 @ N4 ) ) )
                                   => ~ ( accp_P3113834385874906142um_num @ bit_un2901131394128224187um_rel @ ( product_Pair_num_num @ ( bit1 @ M5 ) @ ( bit1 @ N4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% xor_num.pelims
thf(fact_3013_and__num__rel__dict,axiom,
    bit_un4731106466462545111um_rel = bit_un5425074673868309765um_rel ).

% and_num_rel_dict
thf(fact_3014_xor__num__rel__dict,axiom,
    bit_un2901131394128224187um_rel = bit_un3595099601533988841um_rel ).

% xor_num_rel_dict
thf(fact_3015_and__num__dict,axiom,
    bit_un7362597486090784418nd_num = bit_un1837492267222099188nd_num ).

% and_num_dict
thf(fact_3016_xor__num__dict,axiom,
    bit_un2480387367778600638or_num = bit_un6178654185764691216or_num ).

% xor_num_dict
thf(fact_3017_Bit__Operations_Otake__bit__num__code,axiom,
    ( bit_take_bit_num
    = ( ^ [N2: nat,M6: num] :
          ( produc478579273971653890on_num
          @ ^ [A4: nat,X4: num] :
              ( case_nat_option_num @ none_num
              @ ^ [O: nat] :
                  ( case_num_option_num @ ( some_num @ one )
                  @ ^ [P6: num] :
                      ( case_o6005452278849405969um_num @ none_num
                      @ ^ [Q4: num] : ( some_num @ ( bit0 @ Q4 ) )
                      @ ( bit_take_bit_num @ O @ P6 ) )
                  @ ^ [P6: num] : ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ O @ P6 ) ) )
                  @ X4 )
              @ A4 )
          @ ( product_Pair_nat_num @ N2 @ M6 ) ) ) ) ).

% Bit_Operations.take_bit_num_code
thf(fact_3018_num__of__integer__code,axiom,
    ( code_num_of_integer
    = ( ^ [K3: code_integer] :
          ( if_num @ ( ord_le3102999989581377725nteger @ K3 @ one_one_Code_integer ) @ one
          @ ( produc7336495610019696514er_num
            @ ^ [L: code_integer,J3: code_integer] : ( if_num @ ( J3 = zero_z3403309356797280102nteger ) @ ( plus_plus_num @ ( code_num_of_integer @ L ) @ ( code_num_of_integer @ L ) ) @ ( plus_plus_num @ ( plus_plus_num @ ( code_num_of_integer @ L ) @ ( code_num_of_integer @ L ) ) @ one ) )
            @ ( code_divmod_integer @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% num_of_integer_code
thf(fact_3019_upt__rec__numeral,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
       => ( ( upt @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
          = ( cons_nat @ ( numeral_numeral_nat @ M ) @ ( upt @ ( suc @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_nat @ N ) ) ) ) )
      & ( ~ ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
       => ( ( upt @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
          = nil_nat ) ) ) ).

% upt_rec_numeral
thf(fact_3020_remdups__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( remdups_nat @ ( upt @ M @ N ) )
      = ( upt @ M @ N ) ) ).

% remdups_upt
thf(fact_3021_hd__upt,axiom,
    ! [I2: nat,J: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( hd_nat @ ( upt @ I2 @ J ) )
        = I2 ) ) ).

% hd_upt
thf(fact_3022_drop__upt,axiom,
    ! [M: nat,I2: nat,J: nat] :
      ( ( drop_nat @ M @ ( upt @ I2 @ J ) )
      = ( upt @ ( plus_plus_nat @ I2 @ M ) @ J ) ) ).

% drop_upt
thf(fact_3023_length__upt,axiom,
    ! [I2: nat,J: nat] :
      ( ( size_size_list_nat @ ( upt @ I2 @ J ) )
      = ( minus_minus_nat @ J @ I2 ) ) ).

% length_upt
thf(fact_3024_take__upt,axiom,
    ! [I2: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ M ) @ N )
     => ( ( take_nat @ M @ ( upt @ I2 @ N ) )
        = ( upt @ I2 @ ( plus_plus_nat @ I2 @ M ) ) ) ) ).

% take_upt
thf(fact_3025_upt__conv__Nil,axiom,
    ! [J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ J @ I2 )
     => ( ( upt @ I2 @ J )
        = nil_nat ) ) ).

% upt_conv_Nil
thf(fact_3026_sorted__list__of__set__range,axiom,
    ! [M: nat,N: nat] :
      ( ( linord2614967742042102400et_nat @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( upt @ M @ N ) ) ).

% sorted_list_of_set_range
thf(fact_3027_upt__eq__Nil__conv,axiom,
    ! [I2: nat,J: nat] :
      ( ( ( upt @ I2 @ J )
        = nil_nat )
      = ( ( J = zero_zero_nat )
        | ( ord_less_eq_nat @ J @ I2 ) ) ) ).

% upt_eq_Nil_conv
thf(fact_3028_nth__upt,axiom,
    ! [I2: nat,K: nat,J: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ J )
     => ( ( nth_nat @ ( upt @ I2 @ J ) @ K )
        = ( plus_plus_nat @ I2 @ K ) ) ) ).

% nth_upt
thf(fact_3029_atMost__upto,axiom,
    ( set_ord_atMost_nat
    = ( ^ [N2: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ ( suc @ N2 ) ) ) ) ) ).

% atMost_upto
thf(fact_3030_atLeastLessThan__upt,axiom,
    ( set_or4665077453230672383an_nat
    = ( ^ [I4: nat,J3: nat] : ( set_nat2 @ ( upt @ I4 @ J3 ) ) ) ) ).

% atLeastLessThan_upt
thf(fact_3031_atLeastAtMost__upt,axiom,
    ( set_or1269000886237332187st_nat
    = ( ^ [N2: nat,M6: nat] : ( set_nat2 @ ( upt @ N2 @ ( suc @ M6 ) ) ) ) ) ).

% atLeastAtMost_upt
thf(fact_3032_greaterThanLessThan__upt,axiom,
    ( set_or5834768355832116004an_nat
    = ( ^ [N2: nat,M6: nat] : ( set_nat2 @ ( upt @ ( suc @ N2 ) @ M6 ) ) ) ) ).

% greaterThanLessThan_upt
thf(fact_3033_atLeast__upt,axiom,
    ( set_ord_lessThan_nat
    = ( ^ [N2: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ N2 ) ) ) ) ).

% atLeast_upt
thf(fact_3034_greaterThanAtMost__upt,axiom,
    ( set_or6659071591806873216st_nat
    = ( ^ [N2: nat,M6: nat] : ( set_nat2 @ ( upt @ ( suc @ N2 ) @ ( suc @ M6 ) ) ) ) ) ).

% greaterThanAtMost_upt
thf(fact_3035_upt__conv__Cons__Cons,axiom,
    ! [M: nat,N: nat,Ns: list_nat,Q2: nat] :
      ( ( ( cons_nat @ M @ ( cons_nat @ N @ Ns ) )
        = ( upt @ M @ Q2 ) )
      = ( ( cons_nat @ N @ Ns )
        = ( upt @ ( suc @ M ) @ Q2 ) ) ) ).

% upt_conv_Cons_Cons
thf(fact_3036_upt__0,axiom,
    ! [I2: nat] :
      ( ( upt @ I2 @ zero_zero_nat )
      = nil_nat ) ).

% upt_0
thf(fact_3037_distinct__upt,axiom,
    ! [I2: nat,J: nat] : ( distinct_nat @ ( upt @ I2 @ J ) ) ).

% distinct_upt
thf(fact_3038_upt__conv__Cons,axiom,
    ! [I2: nat,J: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( upt @ I2 @ J )
        = ( cons_nat @ I2 @ ( upt @ ( suc @ I2 ) @ J ) ) ) ) ).

% upt_conv_Cons
thf(fact_3039_upt__add__eq__append,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( upt @ I2 @ ( plus_plus_nat @ J @ K ) )
        = ( append_nat @ ( upt @ I2 @ J ) @ ( upt @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).

% upt_add_eq_append
thf(fact_3040_upt__eq__Cons__conv,axiom,
    ! [I2: nat,J: nat,X: nat,Xs: list_nat] :
      ( ( ( upt @ I2 @ J )
        = ( cons_nat @ X @ Xs ) )
      = ( ( ord_less_nat @ I2 @ J )
        & ( I2 = X )
        & ( ( upt @ ( plus_plus_nat @ I2 @ one_one_nat ) @ J )
          = Xs ) ) ) ).

% upt_eq_Cons_conv
thf(fact_3041_upt__rec,axiom,
    ( upt
    = ( ^ [I4: nat,J3: nat] : ( if_list_nat @ ( ord_less_nat @ I4 @ J3 ) @ ( cons_nat @ I4 @ ( upt @ ( suc @ I4 ) @ J3 ) ) @ nil_nat ) ) ) ).

% upt_rec
thf(fact_3042_upt__Suc__append,axiom,
    ! [I2: nat,J: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( upt @ I2 @ ( suc @ J ) )
        = ( append_nat @ ( upt @ I2 @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) ) ).

% upt_Suc_append
thf(fact_3043_upt__Suc,axiom,
    ! [I2: nat,J: nat] :
      ( ( ( ord_less_eq_nat @ I2 @ J )
       => ( ( upt @ I2 @ ( suc @ J ) )
          = ( append_nat @ ( upt @ I2 @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) )
      & ( ~ ( ord_less_eq_nat @ I2 @ J )
       => ( ( upt @ I2 @ ( suc @ J ) )
          = nil_nat ) ) ) ).

% upt_Suc
thf(fact_3044_sum__list__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups4561878855575611511st_nat @ ( upt @ M @ N ) )
        = ( groups3542108847815614940at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ) ).

% sum_list_upt
thf(fact_3045_map__Suc__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( map_nat_nat @ suc @ ( upt @ M @ N ) )
      = ( upt @ ( suc @ M ) @ ( suc @ N ) ) ) ).

% map_Suc_upt
thf(fact_3046_map__add__upt,axiom,
    ! [N: nat,M: nat] :
      ( ( map_nat_nat
        @ ^ [I4: nat] : ( plus_plus_nat @ I4 @ N )
        @ ( upt @ zero_zero_nat @ M ) )
      = ( upt @ N @ ( plus_plus_nat @ M @ N ) ) ) ).

% map_add_upt
thf(fact_3047_map__decr__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( map_nat_nat
        @ ^ [N2: nat] : ( minus_minus_nat @ N2 @ ( suc @ zero_zero_nat ) )
        @ ( upt @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( upt @ M @ N ) ) ).

% map_decr_upt
thf(fact_3048_Divides_Oadjust__div__def,axiom,
    ( adjust_div
    = ( produc8211389475949308722nt_int
      @ ^ [Q4: int,R5: int] : ( plus_plus_int @ Q4 @ ( zero_n2684676970156552555ol_int @ ( R5 != zero_zero_int ) ) ) ) ) ).

% Divides.adjust_div_def
thf(fact_3049_card__length__sum__list__rec,axiom,
    ! [M: nat,N3: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ M )
     => ( ( finite_card_list_nat
          @ ( collect_list_nat
            @ ^ [L: list_nat] :
                ( ( ( size_size_list_nat @ L )
                  = M )
                & ( ( groups4561878855575611511st_nat @ L )
                  = N3 ) ) ) )
        = ( plus_plus_nat
          @ ( finite_card_list_nat
            @ ( collect_list_nat
              @ ^ [L: list_nat] :
                  ( ( ( size_size_list_nat @ L )
                    = ( minus_minus_nat @ M @ one_one_nat ) )
                  & ( ( groups4561878855575611511st_nat @ L )
                    = N3 ) ) ) )
          @ ( finite_card_list_nat
            @ ( collect_list_nat
              @ ^ [L: list_nat] :
                  ( ( ( size_size_list_nat @ L )
                    = M )
                  & ( ( plus_plus_nat @ ( groups4561878855575611511st_nat @ L ) @ one_one_nat )
                    = N3 ) ) ) ) ) ) ) ).

% card_length_sum_list_rec
thf(fact_3050_card__length__sum__list,axiom,
    ! [M: nat,N3: nat] :
      ( ( finite_card_list_nat
        @ ( collect_list_nat
          @ ^ [L: list_nat] :
              ( ( ( size_size_list_nat @ L )
                = M )
              & ( ( groups4561878855575611511st_nat @ L )
                = N3 ) ) ) )
      = ( binomial @ ( minus_minus_nat @ ( plus_plus_nat @ N3 @ M ) @ one_one_nat ) @ N3 ) ) ).

% card_length_sum_list
thf(fact_3051_sorted__wrt__upt,axiom,
    ! [M: nat,N: nat] : ( sorted_wrt_nat @ ord_less_nat @ ( upt @ M @ N ) ) ).

% sorted_wrt_upt
thf(fact_3052_sorted__upt,axiom,
    ! [M: nat,N: nat] : ( sorted_wrt_nat @ ord_less_eq_nat @ ( upt @ M @ N ) ) ).

% sorted_upt
thf(fact_3053_sorted__wrt__less__idx,axiom,
    ! [Ns: list_nat,I2: nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ Ns )
     => ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ns ) )
       => ( ord_less_eq_nat @ I2 @ ( nth_nat @ Ns @ I2 ) ) ) ) ).

% sorted_wrt_less_idx
thf(fact_3054_sorted__upto,axiom,
    ! [M: int,N: int] : ( sorted_wrt_int @ ord_less_eq_int @ ( upto @ M @ N ) ) ).

% sorted_upto
thf(fact_3055_sorted__wrt__upto,axiom,
    ! [I2: int,J: int] : ( sorted_wrt_int @ ord_less_int @ ( upto @ I2 @ J ) ) ).

% sorted_wrt_upto
thf(fact_3056_tl__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( tl_nat @ ( upt @ M @ N ) )
      = ( upt @ ( suc @ M ) @ N ) ) ).

% tl_upt
thf(fact_3057_VEBT_Osize_I3_J,axiom,
    ! [X11: option4927543243414619207at_nat,X12: nat,X13: list_VEBT_VEBT,X14: vEBT_VEBT] :
      ( ( size_size_VEBT_VEBT @ ( vEBT_Node @ X11 @ X12 @ X13 @ X14 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_list_VEBT_VEBT @ size_size_VEBT_VEBT @ X13 ) @ ( size_size_VEBT_VEBT @ X14 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% VEBT.size(3)
thf(fact_3058_VEBT_Osize__gen_I1_J,axiom,
    ! [X11: option4927543243414619207at_nat,X12: nat,X13: list_VEBT_VEBT,X14: vEBT_VEBT] :
      ( ( vEBT_size_VEBT @ ( vEBT_Node @ X11 @ X12 @ X13 @ X14 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_list_VEBT_VEBT @ vEBT_size_VEBT @ X13 ) @ ( vEBT_size_VEBT @ X14 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% VEBT.size_gen(1)
thf(fact_3059_pairs__le__eq__Sigma,axiom,
    ! [M: nat] :
      ( ( collec3392354462482085612at_nat
        @ ( produc6081775807080527818_nat_o
          @ ^ [I4: nat,J3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ J3 ) @ M ) ) )
      = ( produc457027306803732586at_nat @ ( set_ord_atMost_nat @ M )
        @ ^ [R5: nat] : ( set_ord_atMost_nat @ ( minus_minus_nat @ M @ R5 ) ) ) ) ).

% pairs_le_eq_Sigma
thf(fact_3060_card__le__Suc__Max,axiom,
    ! [S3: set_nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ord_less_eq_nat @ ( finite_card_nat @ S3 ) @ ( suc @ ( lattic8265883725875713057ax_nat @ S3 ) ) ) ) ).

% card_le_Suc_Max
thf(fact_3061_divide__nat__def,axiom,
    ( divide_divide_nat
    = ( ^ [M6: nat,N2: nat] :
          ( if_nat @ ( N2 = zero_zero_nat ) @ zero_zero_nat
          @ ( lattic8265883725875713057ax_nat
            @ ( collect_nat
              @ ^ [K3: nat] : ( ord_less_eq_nat @ ( times_times_nat @ K3 @ N2 ) @ M6 ) ) ) ) ) ) ).

% divide_nat_def
thf(fact_3062_gcd__is__Max__divisors__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( gcd_gcd_nat @ M @ N )
        = ( lattic8265883725875713057ax_nat
          @ ( collect_nat
            @ ^ [D2: nat] :
                ( ( dvd_dvd_nat @ D2 @ M )
                & ( dvd_dvd_nat @ D2 @ N ) ) ) ) ) ) ).

% gcd_is_Max_divisors_nat
thf(fact_3063_prod__encode__prod__decode__aux,axiom,
    ! [K: nat,M: nat] :
      ( ( nat_prod_encode @ ( nat_prod_decode_aux @ K @ M ) )
      = ( plus_plus_nat @ ( nat_triangle @ K ) @ M ) ) ).

% prod_encode_prod_decode_aux
thf(fact_3064_le__prod__encode__2,axiom,
    ! [B: nat,A: nat] : ( ord_less_eq_nat @ B @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_2
thf(fact_3065_le__prod__encode__1,axiom,
    ! [A: nat,B: nat] : ( ord_less_eq_nat @ A @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_1
thf(fact_3066_prod__encode__def,axiom,
    ( nat_prod_encode
    = ( produc6842872674320459806at_nat
      @ ^ [M6: nat,N2: nat] : ( plus_plus_nat @ ( nat_triangle @ ( plus_plus_nat @ M6 @ N2 ) ) @ M6 ) ) ) ).

% prod_encode_def
thf(fact_3067_list__encode_Oelims,axiom,
    ! [X: list_nat,Y2: nat] :
      ( ( ( nat_list_encode @ X )
        = Y2 )
     => ( ( ( X = nil_nat )
         => ( Y2 != zero_zero_nat ) )
       => ~ ! [X5: nat,Xs2: list_nat] :
              ( ( X
                = ( cons_nat @ X5 @ Xs2 ) )
             => ( Y2
               != ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X5 @ ( nat_list_encode @ Xs2 ) ) ) ) ) ) ) ) ).

% list_encode.elims
thf(fact_3068_list__encode_Osimps_I2_J,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( nat_list_encode @ ( cons_nat @ X @ Xs ) )
      = ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X @ ( nat_list_encode @ Xs ) ) ) ) ) ).

% list_encode.simps(2)
thf(fact_3069_list__encode_Opelims,axiom,
    ! [X: list_nat,Y2: nat] :
      ( ( ( nat_list_encode @ X )
        = Y2 )
     => ( ( accp_list_nat @ nat_list_encode_rel @ X )
       => ( ( ( X = nil_nat )
           => ( ( Y2 = zero_zero_nat )
             => ~ ( accp_list_nat @ nat_list_encode_rel @ nil_nat ) ) )
         => ~ ! [X5: nat,Xs2: list_nat] :
                ( ( X
                  = ( cons_nat @ X5 @ Xs2 ) )
               => ( ( Y2
                    = ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X5 @ ( nat_list_encode @ Xs2 ) ) ) ) )
                 => ~ ( accp_list_nat @ nat_list_encode_rel @ ( cons_nat @ X5 @ Xs2 ) ) ) ) ) ) ) ).

% list_encode.pelims
thf(fact_3070_Gcd__nat__eq__one,axiom,
    ! [N3: set_nat] :
      ( ( member_nat @ one_one_nat @ N3 )
     => ( ( gcd_Gcd_nat @ N3 )
        = one_one_nat ) ) ).

% Gcd_nat_eq_one
thf(fact_3071_Gcd__int__greater__eq__0,axiom,
    ! [K5: set_int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_Gcd_int @ K5 ) ) ).

% Gcd_int_greater_eq_0
thf(fact_3072_of__nat__eq__id,axiom,
    semiri1316708129612266289at_nat = id_nat ).

% of_nat_eq_id
thf(fact_3073_Rat_Opositive__def,axiom,
    ( positive
    = ( map_fu898904425404107465nt_o_o @ rep_Rat @ id_o
      @ ^ [X4: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) ) ) ) ).

% Rat.positive_def
thf(fact_3074_sort__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( linord738340561235409698at_nat
        @ ^ [X4: nat] : X4
        @ ( upt @ M @ N ) )
      = ( upt @ M @ N ) ) ).

% sort_upt
thf(fact_3075_sort__upto,axiom,
    ! [I2: int,J: int] :
      ( ( linord1735203802627413978nt_int
        @ ^ [X4: int] : X4
        @ ( upto @ I2 @ J ) )
      = ( upto @ I2 @ J ) ) ).

% sort_upto

% Helper facts (32)
thf(help_If_2_1_If_001t__Int__Oint_T,axiom,
    ! [X: int,Y2: int] :
      ( ( if_int @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Int__Oint_T,axiom,
    ! [X: int,Y2: int] :
      ( ( if_int @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y2: nat] :
      ( ( if_nat @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y2: nat] :
      ( ( if_nat @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Num__Onum_T,axiom,
    ! [X: num,Y2: num] :
      ( ( if_num @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Num__Onum_T,axiom,
    ! [X: num,Y2: num] :
      ( ( if_num @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Rat__Orat_T,axiom,
    ! [X: rat,Y2: rat] :
      ( ( if_rat @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Rat__Orat_T,axiom,
    ! [X: rat,Y2: rat] :
      ( ( if_rat @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Real__Oreal_T,axiom,
    ! [X: real,Y2: real] :
      ( ( if_real @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Real__Oreal_T,axiom,
    ! [X: real,Y2: real] :
      ( ( if_real @ $true @ X @ Y2 )
      = X ) ).

thf(help_fChoice_1_1_fChoice_001t__Real__Oreal_T,axiom,
    ! [P: real > $o] :
      ( ( P @ ( fChoice_real @ P ) )
      = ( ? [X2: real] : ( P @ X2 ) ) ) ).

thf(help_If_2_1_If_001t__Code____Numeral__Ointeger_T,axiom,
    ! [X: code_integer,Y2: code_integer] :
      ( ( if_Code_integer @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Code____Numeral__Ointeger_T,axiom,
    ! [X: code_integer,Y2: code_integer] :
      ( ( if_Code_integer @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Set__Oset_It__Int__Oint_J_T,axiom,
    ! [X: set_int,Y2: set_int] :
      ( ( if_set_int @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Set__Oset_It__Int__Oint_J_T,axiom,
    ! [X: set_int,Y2: set_int] :
      ( ( if_set_int @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__VEBT____Definitions__OVEBT_T,axiom,
    ! [X: vEBT_VEBT,Y2: vEBT_VEBT] :
      ( ( if_VEBT_VEBT @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__VEBT____Definitions__OVEBT_T,axiom,
    ! [X: vEBT_VEBT,Y2: vEBT_VEBT] :
      ( ( if_VEBT_VEBT @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__List__Olist_It__Int__Oint_J_T,axiom,
    ! [X: list_int,Y2: list_int] :
      ( ( if_list_int @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Int__Oint_J_T,axiom,
    ! [X: list_int,Y2: list_int] :
      ( ( if_list_int @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X: list_nat,Y2: list_nat] :
      ( ( if_list_nat @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X: list_nat,Y2: list_nat] :
      ( ( if_list_nat @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Num__Onum_J_T,axiom,
    ! [X: option_num,Y2: option_num] :
      ( ( if_option_num @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Num__Onum_J_T,axiom,
    ! [X: option_num,Y2: option_num] :
      ( ( if_option_num @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_T,axiom,
    ! [X: product_prod_int_int,Y2: product_prod_int_int] :
      ( ( if_Pro3027730157355071871nt_int @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_T,axiom,
    ! [X: product_prod_int_int,Y2: product_prod_int_int] :
      ( ( if_Pro3027730157355071871nt_int @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y2: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y2: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J_T,axiom,
    ! [X: produc6271795597528267376eger_o,Y2: produc6271795597528267376eger_o] :
      ( ( if_Pro5737122678794959658eger_o @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J_T,axiom,
    ! [X: produc6271795597528267376eger_o,Y2: produc6271795597528267376eger_o] :
      ( ( if_Pro5737122678794959658eger_o @ $true @ X @ Y2 )
      = X ) ).

thf(help_If_3_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [X: produc8923325533196201883nteger,Y2: produc8923325533196201883nteger] :
      ( ( if_Pro6119634080678213985nteger @ $false @ X @ Y2 )
      = Y2 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [X: produc8923325533196201883nteger,Y2: produc8923325533196201883nteger] :
      ( ( if_Pro6119634080678213985nteger @ $true @ X @ Y2 )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ! [I3: nat] :
      ( ~ ( ord_less_nat @ I3 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ m ) )
      | ( ( ( ( vEBT_VEBT_high @ ( ord_max_nat @ ma @ xa ) @ na )
           != I3 )
          | ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ ( append_VEBT_VEBT @ ( take_VEBT_VEBT @ ( vEBT_VEBT_high @ xa @ na ) @ treeList ) @ ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) @ ( vEBT_VEBT_low @ xa @ na ) ) @ nil_VEBT_VEBT ) @ ( drop_VEBT_VEBT @ ( plus_plus_nat @ ( vEBT_VEBT_high @ xa @ na ) @ one_one_nat ) @ treeList ) ) ) @ I3 ) @ ( vEBT_VEBT_low @ ( ord_max_nat @ ma @ xa ) @ na ) ) )
        & ! [Y3: nat] :
            ( ( ( vEBT_VEBT_high @ Y3 @ na )
             != I3 )
            | ~ ( vEBT_V8194947554948674370ptions @ ( nth_VEBT_VEBT @ ( append_VEBT_VEBT @ ( take_VEBT_VEBT @ ( vEBT_VEBT_high @ xa @ na ) @ treeList ) @ ( append_VEBT_VEBT @ ( cons_VEBT_VEBT @ ( vEBT_vebt_insert @ ( nth_VEBT_VEBT @ treeList @ ( vEBT_VEBT_high @ xa @ na ) ) @ ( vEBT_VEBT_low @ xa @ na ) ) @ nil_VEBT_VEBT ) @ ( drop_VEBT_VEBT @ ( plus_plus_nat @ ( vEBT_VEBT_high @ xa @ na ) @ one_one_nat ) @ treeList ) ) ) @ I3 ) @ ( vEBT_VEBT_low @ Y3 @ na ) )
            | ( ( ord_less_nat @ mi @ Y3 )
              & ( ord_less_eq_nat @ Y3 @ ( ord_max_nat @ ma @ xa ) ) ) ) ) ) ).

%------------------------------------------------------------------------------